Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Базы_данных_29.09.05.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
3.29 Mб
Скачать
  1. 1.15. Иерархическая модель данных

Иерархическая модель данных (рис. 1.15) организует структуру БД в виде иерархической древовидной структуры (упорядоченного дерева). Вершины (узлы дерева) соответствуют сущностям и называются типом записи. При этом тип записи состоит из одного или более элемента данных. Дуга дерева называется связью «исходный − порождённый». Эта связь бинарная «один к одному» или «один ко многим». Одному экземпляру исходной записи соответствует 0,1 или несколько экземпляров порожденной записи (рис. 1.16). В дереве между двумя узлами может быть не более одной связи. Доступ к каждому узлу дерева осуществляется по иерархическому пути (последовательности типов записей от корня дерева). Расширением типа записи является таблица, а расширением связи – множество соединений между строками таблиц. Каждая строка таблицы – экземпляр типа записи.

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

При структурировании данных обычно используют следующие операции: конструирование (порождение); включение данных (запись); выборку (чтение); удаление; модификацию (изменение данных).

Рассмотрим операции с иерархической моделью.

  1. Включение данных. Экземпляр порождённой записи не может существовать в отсутствие экземпляра исходной записи. Включение осуществляется с указанием иерархического пути до включаемой записи.

  2. Удаление данных. При удалении экземпляра исходной записи автоматически удаляются все экземпляры порождённых.

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

  4. Обновление данных. Изменение значений производится только над извлечёнными записями.

Достоинства модели:

  • простота понимания;

  • возможность описания сложных структурированных объектов.

Недостатки:

  • искусственный подход с избыточностью для организации связи «многие ко многим»;

  • усложнение операций включения и удаления данных;

  • процедурность операций манипулирования данными.

СУБД, основанные на иерархической модели: система ИНЕС на ЕС ЭВМ (Россия), система IMS (легализованная версия − СУБД ОКА) на IBM-360 (США).

П ример:

  1. 1.16. Организация иерархической модели

Р ассмотрим пример иерархической модели, поддерживаемой СУБД ИНЕС (рис. 1.17).

  1. 1.17. Иерархическая модель, поддерживаемая субд инес

Фрагмент описания структуры базы данных (дерева описания данных):

01 ОТДЕЛЫ: ARRAY

02 STRUCT/KEY = НОМЕР_ОТДЕЛА /

03 НОМЕР_ОТДЕЛА: INT

03 РУКОВОДИТЕЛЬ: TEXT

03 СОТРУДНИКИ: ARRAY

04 STRUCT/KEY = ТАБ_НОМЕР /

05 ТАБ_НОМЕР : INT

05 ФИО: TEXT

05 ДЕТИ: ARRAY

06 STRUCT/KEY=НОМЕР/

07 НОМЕР: INT

07 ИМЯ: TEXT

07 ФАМИЛИЯ:TEXT

07 ГОД_РОЖДЕНИЯ:INT

………………

Запрос к созданной базе данных «Распечатать список детей сотрудников отдела 5/45» выглядит следующим образом:

ОТДЕЛЫ. #’5/45’ . СОТРУДНИКИ . ALL . ДЕТИ . ALL. %%PRINT( ‘0’,ИМЯ, ФАМИЛИЯ, ГОД_РОЖДЕНИЯ).

С етевая модель данных (рис. 1.18) сущности объединяет в сеть, которая представляет собой совокупность вершин, соединённых попарно ориентированными дугами. Это ориентированный граф произвольного вида. Две вершины соединены путём, если из одной вершины можно получить другую, двигаясь последовательно в направлении стрелок.