Иерархическая модель.
В иерархической модели связи между данными можно описать с помощью упорядоченного графа (или дерева).
Рис. Представление связей в иерархической модели
Для описания структуры (схемы) иерархической БД на некотором языке Си и «запись» языка Паскаль, он является составным и включает в себя подтипы, каждый из которых, в свою очередь является типом «дерево». Каждый из типов «дерево» состоит из корневого типа и упорядоченного набора подчиненных типов. Каждый из элементарных типов, включенных в тип «дерево», является простым или составным типом запись. Простая запись состоит из одного типа, например числового, а составная «запись» объединяет некоторую совокупность типов, например, целое, строку символов и указатель (ссылку).
| |||||||||||||||
| |||||||||||||||
Корневым называется тип, который имеет подчиненные типы и сам не является подтипом.
Подчинённый тип (подтип) является потомком по отношению к типу, который выступает для него в роли предка (родителя). Потомки одного и того же типа являются близнецами по отношению друг к другу.
Иерархическая БД представляет собой упорядоченную совокупность экземпляров данных типа «дерево», содержащих экземпляры типа «запись». Поля записей хранят числовые и символьные значения. Обход всех элементов иерархической БД производится сверху вниз и слева на право.
Для организации физического размещения иерархических данных в памяти ЭВМ могут использоваться следующие методы:
· представление линейным списком с последовательным распределением памяти (адресная арифметика);
· представление связными линейными списками (методы, использующие указатели и справочники);
К основным операциям манипулирования данными относятся:
· Поиск указанного экземпляра БД;
· Переход от одного дерева к другому;
· Переход от одной записи к другой внутри дерева;
· Вставка новой записи в указанную позицию;
· Удаление текущей записи.
В соответствии с определением типа «дерево», можно заключить, что между предками и потомками автоматически поддерживается контроль целостности связей.
К достоинствам иерархической модели можно отнести: эффективное использование памяти, хорошие показатели времени выполнения основных операций над данными, удобство работы с иерархически упорядоченной информацией. К недостаткам: громоздкость, сложность понимания для пользователя, сложные логические связи
На иерархической модели данных основано ограниченное количество СУБД:
Зарубежные – IMS, PC/Focus, ОТЕЧЕСТВЕННЫЕ: Ока, ИНЭС, МИРИС.