Иерархическая модель данных


Является частным случаем сетевой модели.

Иерархическая БД состоит из упорядоченного набора деревьев; более точно, из упорядоченного набора нескольких экземпляров одного типа дерева.

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

Структура – дерево.

.

 

Пример типа дерева (схемы иерархической БД) представлен на рис. 2.19.

 

Рис. 2.19.Пример схемы иерархической БД

 

На рис. 2.19 ОТДЕЛ является предком для НАЧАЛЬНИК и СОТРУДНИКИ, а НАЧАЛЬНИК и СОТРУДНИКИ - потомки ОТДЕЛ. Между типами записи поддерживаются связи.

 

Для учета общих данных выполняется связывание деревьев:

─ в одном дереве храниться оригинал

─ в других – копии, содержащие ссылки на оригинал

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

Виды членства:

Класс членства всегда фиксирован. При удалении – каскадирование.

Все экземпляры данного типа потомка с общим экземпляром типа предка называются близнецами. Для БД определен полный порядок обхода - сверху-вниз, слева-направо.

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

§ Найти указанное дерево БД (например, отдел 42, рис.2.19).

§ Перейти от одного дерева к другому.

§ Перейти от одной записи к другой внутри дерева (например, от отдела – к первому сотруднику).

§ Перейти от одной записи к другой в порядке обхода иерархии.

§ Вставить новую запись в указанную позицию.

§ Удалить текущую запись.

Автоматически поддерживается целостность ссылок между предками и потомками. Основное правило: никакой потомок не может существовать без своего родителя.

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

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

Достоинством иерархической структуры является компактность. Она имеет максимальные характеристики по объёму памяти и быстродействию.

 



Дата добавления: 2016-12-27; просмотров: 1593;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.008 сек.