5. Иерархическая модель данных: структуры, ограничения целостности, операции. Достоинства и недостатки иерархической МД.
Типичным представителем (наиболее известным и распространенным) является СУБД IMS (Information Management System) компании IBM. Первая версия системы появилась в 1968 г.
структуры данных
Атрибут (элемент данных)- наименьшая единица структуры данных. Обычно каждому элементу при описании базы данных присваивается уникальное имя. По этому имени к нему обращаются при обработке. Элемент данных также часто называют полем.
Запись- именованная совокупность атрибутов. Использование записей позволяет за одно обращение к базе получить некоторую логически связанную совокупность данных. Именно записи изменяются, добавляются и удаляются. Тип записи определяется составом ее атрибутов. Экземпляр записи - конкретная запись с конкретным значением элементов
Групповое отношение - иерархическое отношение между записями двух типов. Родительская запись (владелец группового отношения) называется исходной записью, а дочерние записи (члены группового отношения) - подчиненными. Иерархическая база данных может хранить только такие древовидные структуры.
Иерархическая БД состоит из упорядоченного набора деревьев; более точно, из упорядоченного набора нескольких экземпляров одного типа дерева. Тип дерева состоит из одного "корневого" типа записи и упорядоченного набора из нуля или более типов поддеревьев (каждое из которых является некоторым типом дерева). Тип дерева в целом представляет собой иерархически организованный набор типов записи.
Корневая запись каждого дерева обязательно должна содержать ключ с уникальным значением. Ключи некорневых записей должны иметь уникальное значение только в рамках группового отношения. Каждая запись идентифицируется полным сцепленным ключом, под которым понимается совокупность ключей всех записей от корневой, по иерархическому пути.
При графическом изображении групповые отношения изображают дугами ориентированного графа, а типы записей- вершинами (диаграмма Бахмана).
Все экземпляры данного типа потомка с общим экземпляром типа предка называются близнецами. Для иерархической базы данных определяется полный порядок обхода дерева: сверху-вниз, слева-направо. Заметим, что в терминологии IMS вместо термина запись использовался термин сегмент, а под записью базы данных понималось все дерево сегментов.
операции
Примерами типичных операций манипулирования иерархически организованными данными могут быть следующие:
найти указанный экземпляр типа дерева БД (например, отдел 310);
перейти от одного экземпляра типа дерева к другому;
перейти от экземпляра одного типа записи к экземпляру другого типа записи внутри дерева (например, перейти от отдела к первому сотруднику);
перейти от одной записи к другой в порядке обхода иерархии;
вставить новую запись в указанную позицию;
удалить текущую запись.
ограничения целостности
В иерархической модели данных автоматически поддерживается целостность ссылок между предками и потомками. Основное правило: никакой потомок не может существовать без своего родителя. Заметим, что аналогичная поддержка целостности по ссылкам между записями без связи "предок-потомок", не обеспечивается. Примером такой "внешней" ссылки является содержимое поля ук_Отдел в экземпляре типа записи Руководитель.
Достоинства и недостатки ранних СУБД
Достоинства ранних СУБД:
развитые средства управления данными во внешней памяти на низком уровне;
возможность построения вручную эффективных прикладных систем;
возможность экономии памяти за счет разделения подобъектов (в сетевых системах)
Недостатки ранних СУБД:
сложность использования;
высокий уровень требований к знаниям о физической организации БД;
зависимость прикладных систем от физической организации БД;
перегруженность логики прикладных систем деталями организации доступа к БД.