Иерархическая модель данных – алгоритм получения структуры иерархической БД.
Допустимыми информационными конструкциями являются отношения, веерные отношения и иерархические БД.
Иерархические БД – это множество отношений и веерных отношений, для которых соблюдаются 2 ограничения:
1)существует единственное отношение, называемое корневым, которое не является зависимым ни в одном веерном отношении.
2)все остальные отношении, за исключением корневого, являются зависимыми отношениями только в одном веерном отношении.
Если в рамках данной структуры необходимо указать для групп, выполняющих дипломный проект, необходимо указать связь с выпускающей кафедрой. Существуют различные возможности прохождения иерархии организованных значений в линейной последовательности. Принцип, применяемый для иерархической БД, называется концевым прохождением.
Правила концевого прохождения:
1.Начиная с первого значения корневого отношения, перечисляются первые значения соответствующих отношений на каждом уровне вплоть до последнего.
2.Перечисляем все значения в том веерном отношении, на котором остановился шаг №1.
3.Перечисляются значения всех вееров этого веерного отношения.
4.От достигнутого уровня происходит подъем на предыдущем примере и если возможно применить шаг №1, то процесс повторяется.
Записью иерархической БД называется множество значений, содержащих одно значение корневого отношения, и все веры доступны от него в соответствии со структурой иерархической БД.
Требования к иерархической БД: первичный ключ каждого корневого отношения должен функционально определять первичный ключ корневого отношения.
Записью иерархической БД называется множество значений, содержащих одно значение корневого отношения, и все веры доступны от него в соответствии со структурой иерархической БД.
Требования к иерархической БД: первичный ключ каждого корневого отношения должен функционально определять первичный ключ корневого отношения.
Алгоритм получения структуры иерархической БД:
Исходное множество функциональной зависимости и атрибуты первичного ключа получаются также как при формировании множества отношений 3НФ.
1)для каждой функциональной зависимости вида А–>В создается отношение Si (A, B). Каждый блок взаимно однозначных соответствий также порождает отношения с ключом, равным старшему по смыслу атрибуту.
2)разделить отношения на группы по принципу: 2 отношения находятся в общей группе, если их ключи функционально определяют хотя бы 1 общий атрибут. Далее шаги 3), 4), 5) выполняются раздельно для каждой группы.
3)у всех пар отношения группы проверяется условие для ключей kj–>ki ; если оно соблюдается, то для соответствующих отношений создается веерное отношение Wij ($i $j).
4)найти в группе цепи веерных отношений и соединить их в дерево. Элемент цепи образуется по условию веерное отношение Wij –Wjk S1-S2, S2-S4, S4-S5.
5)атрибуты, оставшиеся вне цепей на шаге 4) добавить в структуру тех отношений, где они будут неключевыми.
6)если группы полученные на шаге 2 содержат общие отношения, то решить вопрос о целесообразности установления логических связей между иерархической БД.
7)сократить список атрибутов в сегментах за счет удаления атрибутов зависимого отношения, общего в паре основной – зависимой.
3 операции в иерархической БД. Минимальное множество выборки соответствуем трем вариантам.
1)Получить уникальную запись по известным значениям первичного ключа на каждом уровне дерева иерархической БД ;
2) – получить следующую запись на том уровне дерева, где находится текущая запись после выполнения оператора поиска уникальной записи;
3) – получить следующую запись на расположенном ниже уровне дерева, где находится текущая запись после выполнения оператора поиска уникальной записи и поиска следующей записи.