Особенности даталогической модели
В базе данных следует различать внутризаписную и междузаписную структуры. В свою очередь внутризаписная структура может быть линейной и иерархической. Линейная структура – это когда запись состоит из простых элементов, называемых полями, которые следуют в записи одно за другим. Такую запись называют нормализованной.
Иерархическая структура – это когда в состав записи входят не только простые элементы, но и составные. Под составным элементом можно понимать вектор.
Подразумевается, что личность может владеть несколькими иностранными языками. Под составным элементом можно понимать повторяющуюся группу, например:
Может быть и неповторяющаяся группа, например:
Иерархическая структура может быть многоуровневой. Например, в состав повторяющейся группы может входить такая же повторяющаяся группа.
По структуре записи могут быть с постоянным и переменным составом. Если значение какого-либо компонента записи отсутствует, то отсутствует и сам компонент записи. Пример: если личность окончила вуз, то будет присутствовать время окончания и другие характеристики, если вуз не заканчивался, то и всех этих характеристик нет.
По типу длины различают записи с фиксированной, переменной и неопределенной длиной. Переменную длину запись может иметь в результате того, что переменную длину имеют ее поля или отсутствие каких-либо полей.
Межзаписная структура. В основе традиционного деления СУБД по типу моделей данных (реляционная, иерархическая, сетевая и др.) лежит характер связи между записями. Основными компонентами моделей являются файлы, состоящие из записей. В иерархической модели имеется один файл (корень), который является входом в структуру. Остальные имеют одну исходную вершину (родитель) и любое число подчиненных (детей):
Между записью файла-родителя (например, 2) и записью порождаемого файла (например, 4) имеется отношение 1 : М (может быть и 1 : 1).
В сетевой структуре любой файл может быть точкой входа. Каждый из файлов может быть связан с произвольным числом других файлов. Между связанными файлами могут быть любые отношения.
Однако в реальной СУБД на модель накладываются ограничения. Так, например, в сетевых:
· все файлы разделяются на два типа: основные и зависимые;
· входом в базу может служить только основные файлы;
· связываться могут только разнотипные файлы;
· во многих СУБД не поддерживается отношение М : М.
В реляционной модели используется несколько своеобразная терминология: элемент называется атрибутом, колонкой, столбцом или полем. Совокупность атрибутов называется строкой, рядом, записью и кортежем. Совокупность строк – это отношение, таблица или файл базы данных. Связи между файлами в реляционной модели в явном виде могут не описываться. Связи могут устанавливаться динамически в момент обработки данных по различным критериям. В реляционных моделях структура записи может быть только линейной. Каждое отношение по определению имеет ключ (это атрибут или совокупность атрибутов, однозначно идентифицирующих кортеж). Атрибут, который в рассматриваемом отношении не является ключом, а в другом отношении таковым является, называется внешним ключом. Если таблица содержит внешний ключ, то она логически связана с таблицей, содержащей соответствующий первичный ключ, и эта связь имеет отношение 1 : М. Получается, по сути, что понятие “родитель-ребенок” в иерархической модели, “файл-владелец – файл-член” в сетевых и связь “ключ-внешний ключ” в реляционной модели передают одно и то же: наличие связи 1 : М между записями или файлами.