logo
Predmet

69 Иерархическая и сетевая модели базы данных.

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

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

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

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

Сетевая модель данных

Данные в такой модели представлены в виде коллекции записей, а связи – в виде наборов. Сетевая модель – это граф с записями в виде узлов графа и  наборами в виде его ребер. В основу положены графы произвольной структуры, которые отражает взаимосвязи между данными в этой модели. На формирование связей особых ограничений не накладывается в противовес иерархический модели данных. В иерархической модели каждый потомок может иметь связь только с одним родителем, а в сетевой – с несколькими др. экземплярами. Основные операции манипуляции с БД: поиск элемента в БД; переход от предка к некоторому потомку; переход от потомка к предку; вставка новой записи; удаление записи и др. Достоинства: эффективное использование затрат памяти (ресурсы) при манипулировании данными; использовать для решения многих задач из–за различных связей. Недостатки: сложность физической реализации; жесткость связи между  элементами данных накладывает ряд ограничений на удобство манипуляции данными; ослаблен контроль целостности связей между записями.