Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Проектирование реляционных баз данных.docx
Скачиваний:
56
Добавлен:
16.03.2016
Размер:
189.97 Кб
Скачать
  1. Основные модели данных

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

Все моделей можно разделить на две большие группы: инфологические (информационно-логические) и даталогические.

Инфологические модели служат для описания предметной формы, дают методику формализации предметной области, используются на этапе информационного анализа, постановки задачи. Рассмотрение этих моделей выходит за рамки настоящей работы.

Даталогические модели ориентированы на обработку данных, поддерживаются действующими СУБД. К основным классическим даталогическим моделям относятся иерархическая, сетевая и реляционная. Модели различаются, в основном, способом представления связей между объектами. Иерархическая и сетевая модели основаны на теории графов, связи программируются с помощью указателей (списковые структуры). В реляционной модели объекты и связи между ними представляются в виде плоских двумерных таблиц. Доказано, что реляционная модель является более общей, иерархические и сетевые структуры сводимы к реляционным.

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

В основе модели лежат древовидные структуры. Основной тип связи – «один ко многим». Каждый элемент графа называется узлом, самый верхний узел – корень, узлы нижнего уровня, не имеющие порожденных, – листья. Каждый узел, за исключением корня, имеет родительский узел, который непосредственно связан с рассматриваемым и расположен на уровень выше. Множество деревьев называется лесом. На граф иерархической модели накладываются ограничения – ни один элемент не может иметь более одного исходного. Иерархическая модель контекстно зависима. Можно включить данные, если определен (существует) исходный элемент. При удалении элемента удаляются все порожденные им элементы. Иерархическая модель является навигационной. Принят канонический метод обхода дерева: сверху вниз, слева направо (рис. 3.1.). Это позволяет в некоторой степени прогнозировать скорость обработки данных. Очевидно, что выборка данных, расположенных левее и на уровне, более бликом к корню дерева, выполняется быстрее.

Иерархическую модель отличает легкость и эффективность реализации, естественность, простота понимания и использования. Обеспечивается определенный уровень независимости данных. Например, можно добавлять в модель новые типы данных, размещая их правее существующих. Слева наращивать модель нельзя, т.к. можно нарушить работоспособность приложений, использующих операцию получения следующего элемента данных, расположенного на более низком уровне по отношению к исходному.

Рис. 3.1. Канонический алгоритм обхода дерева

К недостаткам иерархической модели можно отнести затрудненность реализации связи «многие ко многим» (требуются специальные технические решения, выходящие за рамки модели), возникновение проблемы удаления и включения данных из-за строгой иерархической упорядоченности. Например, при удалении некоторого узла, удаляется все поддерево, выходящее из этого узла.