Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Bazy_dannykh_Uchebnik_novy

.pdf
Скачиваний:
132
Добавлен:
02.05.2015
Размер:
4.02 Mб
Скачать

служебные указатели, формирующие древовидную структуру, и есть область, заполненная

данными. Единственная точка входа – корневой узел (с нее всегда начинается работа).

Типичный интерфейс:

найти указанный узел – экземпляр сущности (например, деталь D101);

перейти от одного узла к другому на одном уровне;

перейти от одного узла дерева к другому в порядке обхода иерархии, например,

влево-вниз;

перейти от одной подструктуре к другой внутри дерева (например, от D101 к

описанию Конус);

вставить узел (экземпляр сущности) в указанную позицию;

удалить текущий узел экземпляр сущности.

Рисунок 4. Схема иерархической архитектуры базы данных

Пример 2:

Схема иерархической БД "Деталь" показана на рисунке 5.

21

Рисунок 5. Структура иерархической базы «Деталь»

Состав информации базы данных "Деталь":

Для каждой детали: шифр детали (уникальный), название и краткое описание назначения детали, информация о технических характеристиках и наличии на складе;

Характеристики детали включают необходимые технические данные, в примере это вес детали, материал и ее габаритные размеры;

Получение деталей на склад характеризуется датой получения, количеством деталей и уникальным номером накладной;

Для каждой детали существует предприятие-изготовитель, имеющее почтовый адрес, название и шифр;

Деталь может быть куплена через посредников, поэтому отдельно записывается название поставщика, его почтовый адрес, цена за одну деталь и шифр

поставщика.

Таким образом, в базе данных есть 5 типов сегментов: Деталь, Характеристики,

Приход, Изготовитель, Поставщик. Деталь – корневой сегмент. Остальные – подчиненные типы сегментов. Структура данных показана на рисунок 6.

Рисунок 6. Экземпляр сущности в базе «Деталь»

Типичный представитель: СУБД InterSystem.

Сетевая модель базы данных

Сетевой подход к организации данных является расширением иерархического. В

иерархических структурах запись-потомок должна иметь в точности одного предка; в

сетевой структуре потомок может иметь любое число предков. Сетевая БД состоит из

22

набора сущностей и набора связей между ними на уровне концептуальной схемы. На уровне логической модели БД состоит из набора экземпляров сущностей и набора экземпляров связей между ними. Тип связи определяется для двух типов записи: предка и потомка. Экземпляр связи связывает один экземпляр сущности предка и упорядоченный набор экземпляров сущности потомков. Как и иерархической модели, связи между узлами являются указателями, содержащими в себе информацию о физическом расположении данных, относящихся к узлу. В сетевой модели между сущностями могут иметь место любые отношения 1:1 (одной сущности соответствует также одна одна сущность с другим наименованием), 1:М (одной сущности соответствует много сущностей много сущностей с другим наименованием, например, в иерархической структуре у каждого «родителя» есть много «потомков»), М:М (множеству сущностей с одним названием соответствует множество сущностей с другим названием). Однако в реальных СУБД на модель накладываются различные ограничения. Во многих сетевых СУБД не поддерживается отношение М : М. В таких моделях каждая связь между парой файлов определяется отдельно, и для каждой из них один файл в этой паре объявляется «владельцем», а другой

«членом». Связи между файлами в иерархических и сетевых моделях определяются при описании структуры БД и физически передаются при помощи различных указателей.

Пример показан на рисунке 7.

Рисунок 7. Пример сетевой базы.

Типичный интерфейс:

-найти конкретную запись в наборе однотипных записей, например, программиста Сидорова;

-перейти от предка к первому потомку (к первому сотруднику отдела САПР);

-перейти к следующему потомку в некоторой связи (от Сидорова к Иванову);

-перейти от потомка к предку по некоторой связи (найти отдел Сидорова);

-создать новую запись;

-удалить запись;

23

-модифицировать запись;

-включить связь;

-исключить из связи;

-переставить в другую связь и т.д.

Типичный представитель: Integrated Database Manegement System (IDMS) компании

Cullinet software, inc. Архитектура системы основана на предложениях Data Base Task Group (DBTG) комитета по языкам программирования Counference of Data System Languages (CODASYL).

Достоинства и недостатки иерархических и сетевых СУБД

Достоинства:

развитые средства управления данными во внешней памяти на низком уровне;

возможность построения вручную эффективных прикладных систем;

возможность экономии памяти за счет разделения подобъектов (в сетевых системах);

Недостатки:

слишком сложно пользоваться;

фактически необходимы знания о физической организации;

прикладные системы зависят от этой организации;

их логика перегружена деталями организации доступа.

Реляционная модель базы данных

Реляционной модель данных – модель, в которой все данные представлены для пользователя в виде прямоугольных таблиц, и все операции над базой данных сводятся к манипулированию таблицами. Таблица состоит из строк и столбцов и имеет имя,

уникальное внутри базы данных. Таблица отражает тип объекта реального мира

(сущность), а каждая ее строка – конкретный объект. Структуры записей в реляционных БД – линейные. Для доступа к каждой строке таблицы последняя должна иметь ключ, т.е.

атрибут или совокупность атрибутов, однозначно идентифицирующий строку таблицы

(кортеж). Любая таблица может иметь внешний ключ – ссылку на первичный ключ другой таблицы, означающий, что она логически связана с таблицей, содержащей соответствующий первичный ключ.

Достоинства и недостатки реляционной модели

Достоинства:

интуитивно понятна пользователю;

24

поддерживается большинством производителей СУБД;

имеется стандартный язык запросов;

Недостатки:

трудно поддерживаются рефлексивные отношения;

Объектно-ориентированная база данных

Термин «объект» в программной индустрии впервые был введен в языке Simula (1967 г.) и означал какой-либо аспект моделируемой реальности. Сейчас под объектом понимается «нечто, имеющее четко определенные границы» (определение известного американского специалиста Г.Буча). Объекты, обладающие одинаковыми свойствами,

составляют классы (например, курица, пингвин и чайка - объекты класса «птицы»). В

принятой терминологии класс «птица» соответствует сущности, а курица, пингвин, чайка

– экземпляры сущности. Обычно класс описывается как новый тип данных, а объекты

(экземпляры класса) - определенные на его основе переменных.

Идея объектно-ориентированного проектирования состоит в том, что класс хранит внутри себя информацию, к обращения к которой используются специальные функции,

называемые интерфейсом доступа. Схематически представлено на рисунке 8.

Рисунок 8. Схема организации класса.

Классы можно создавать как непосредственно, так и путем специфического вида копирования, которое называется наследованием. При наследовании классу-наследнику передаются значения всех переменных и функций порождающего класса.

25

Стандартизированная объектно-ориентированная модель описана в рекомендациях стандарта ODMG -93 ( Object Database Management Group – группа управления объектно-

ориентированными базами данных). ODMG добавляет возможности взаимодействия с базами данных в объектно-ориентированные языки программирования: определяются средства долговременного хранения объектов и расширяется семантика языка, вносятся операторы управления данными. Стандарт состоит из нескольких частей:

Объектная модель - унифицированная основа всего стандарта. Ключевые концепции объекной модели ODMG:

o наделение объектов такими свойствами как атрибуты и связи o методы объектов (поведение)

o множественное наследование

o идентификаторы объектов (ключи)

o определение таких совокупностей объектов как списки, наборы, массивы и т.д.

o блокировка объектов и изоляция доступа o операции над базой данных

Язык описания объектов (ODL - Object Defifnition Language) - средство определения схемы базы данных (по аналогии с DDL в реляционных СУБД). ODL

рассматривает только описание объектных типов данных, не вдаваясь в детали реализации их методов. Это позволяет переносить схему БД между различными

ODMG-совместимыми СУБД и языками программирования, а также транслировать ее в другие DDL.

Язык объектных запросов (OQL - Object Query Language) - SQL - подобный декларативный язык, который предоставляет эффективные средства для извлечения объектов из базы данных, включая высокоуровневые примитивы для наборов объектов и объектных структур.

Связывание с ОО (объектно-ориентированными) языками. Каждый ОО-язык имеет свой собственный интерфейс, поэтому разработчик остается в одной языковой среде, ему нет необходимости разделять средства программмирования и доступа к данным.

Типичный интерфейс:

зависит от деталей реализации СУБД.

Типичный представитель:

PostgeSQL, хотя в последнее время все СУБД стали использовать объектно-

ориентированные возможности в в виде хранимых процедур: Oracle, Microsoft SQL и пр.

26

Гипертекстовые базы данных

Термин «гипертекст» введен Тедом Нельсоном, который определял гипертекст

следующим образом:

«Под гипертекстом я понимаю не последовательное сочинение (non-sequential writing) а текст, который разветвляется и позволяет читателю выбирать <...>.

Проще говоря, это ряд кусков текста (a series of text chunks), соединенных линками, предлагающими читателю различные пути».

Словарь культуры XX века В.Руднева дает следующее определение гипертекста:

Гипертекст — текст, устроенный таким образом, что он превращается в систему, иерархию текстов, одновременно составляя единство и множество текстов.

С технической точки зрения гипертекстовая система это -

информационная система, способная хранить информацию в виде электронного текста, позволяющая устанавливать электронные связи между любыми

"информационными единицами", хранящимися в ее памяти.

Нетрудно убедиться, что в терминологии данного пособия речь идет данных – фрагментах текста, снабженных интерфейсом – системой перекрестных ссылок, позволяющих переходить от одного фрагмента к другому. Более того, гипертекст является разновидностью сетевой модели данных, в которой данными служат фрагменты текста, а

связи (отношения) между данными приведены к одному типу «ссылается на …».

Гипертекст изначально мыслился создателям как система общественной деятельности.

Корпус текстов Лингвистическим корпусом называют совокупность текстов, собранных в

соответствии с определёнными принципами, размеченных по определённому стандарту и обеспеченных специализированной поисковой системой.

Иногда корпусом («корпус первого порядка») называют просто любое собрание текстов,

объединённых каким-то общим признаком (языком, жанром, автором, периодом создания текстов).

Целесообразность создания текстовых корпусов объясняется:

представлением лингвистических данных в реальном контексте;

достаточно большой представительностью данных (при большом объёме корпуса);

возможностью многократного использования единожды созданного корпуса для решения различных лингвистических задач.

27

Примером корпуса текстов являются собрания законодательных и нормативных актов,

собранных в соответствие с определенным принципом, т.е. объединенных единым классификатором,.и обеспеченных специализированной поисковой системой – общим интерфейсом.

Интернет как информационная система

Интернет - всемирная система объединённых компьютерных сетей, построенная на использовании следующих принципов:

протокола IP и маршрутизации пакетов данных,

гипертекста для для представления информации и связей между ее компонентами.

Интернет образует глобальное информационное пространство, служит физической основой для Всемирной паутины (WWW, World Wide Web) и множества других систем

(протоколов) передачи данных. В настоящее время, когда слово «Интернет» употребляется в обиходе, чаще всего имеется в виду Всемирная паутина и доступная в ней информация, а не сама физическая сеть. К середине 2008 года число пользователей,

регулярно использующих Интернет, составило около 1,5 млрд человек (около четверти населения Земли). Вместе с подключенными к нему компьютерами, Интернет служит основой для развития «информационного общества».

Многомерная модель данных

В основе многомерного представления данных лежит их разделение на две группы -

измерения и факты.

Измерения - это категориальные атрибуты, наименования и свойства объектов,

участвующих в некотором бизнес-процессе. Значениями измерений являются наименования товаров, названия фирм-поставщиков и покупателей, ФИО людей, названия городов и т.д. В нашей терминологии их можно уподобить сущностям.

Единицы – представляют собой категории, которые разделяют домены, принадлежащие каждому измерению, на подмножества. По сути единицы представляют собой классификаторы, которые используются на уровне доменов. Измерения могут быть и числовыми, если какой-либо категории (например, наименованию товара) соответствует числовой код, тогда доменом измерения «товар» будет множество штрих кодов. Можно разделить домен по типам товаров: продовольственные, товары повседневного спроса и пр.

Факты - это данные, количественно описывающие бизнес-процесс, непрерывные по своему характеру, то есть они могут принимать бесконечное множество значений.

Множество фактов образует домен измерения. Примеры фактов - цена товара или

28

изделия, их количество, сумма продаж или закупок, зарплата сотрудников, сумма кредита,

страховое вознаграждение и т.д.

Далее декартово произведение – все возможные комбинации подмножеств доменов можно упорядочить и представить в виде многомерного куба.

Рисунок 9. Концепция многомерного представления данных.

Суть многомерного представления заключается в использовании геометрической аналогии, когда измерения уподобляют осям координат, масштабы создают деление оси координат. Тогда декартово произведение координат образует многомерный куб с ячейками. На рисунке 10 показана интерпретация факта.

29

Рисунок 10. Интерпретация факта в многомерном представлении данных.

В итоге получаем следующее многомерное представление для базы данных, так называемый куб OLAP (online analytical processing - аналитическая обработка в реальном времени).

Рисунок 11. Многомерный куб. (OLAP-куб)

30

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]