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

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

Целью создания такой модели данных была реализация связей "многие ко многим" с одновременным исправлением всех имеющихся недостатков в иерархической модели, которые были выявлены со временем. Сетевая модель данных строится на применении теории графов. С этой точки зрения ей соответствует произвольный граф. В такой модели у каждого потомка может иметься произвольное количество предков. Сетевая база данных состоит из определенного набора записей, а также из указанного набора связей, присутствующих между данными записями. Два типа записей, то есть предок и потомок, определяют типы связей. Экземпляр типа связи обычно представляет собой один экземпляр типа записи предка с включением упорядоченного набора элементов, относящихся к типу записи потомка. Под набором принято понимать поименованную совокупность записей, где записи одного типа объявлены владельцем набора, а остальные записи – членами данного набора.

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

В сетевой модели групповые отношения обычно описывают связь вида "один к множеству", то есть владелец один, а у него много подчиненных. Можно привести в пример такое отношение, как «работать». Тут подразумевается, что каждый сотрудник работает в каком-то определенном отделе, но в каждом отделе вполне может работать несколько сотрудников. В сетевой модели вида "один к множеству" связь между разными сущностями реализована при помощи групповых отношений.

Сетевая модель базы данных подразумевает использование следующих операций над данными:

- запомнить, то есть внести информацию в нашу базу данных;

- включить в групповое отношение, то есть установить между данными определенные связи;

- переключить, то есть сделать переход одного члена набора к какому-то другому владельцу;

- обновить, то есть произвести какие-либо модификации данных;

- извлечь, то есть осуществить операции по чтению данных;

- удалить, то есть произвести логическое или физическое удаление данных;

- исключить какую-то запись из группового отношения, то есть осуществить разрыв связи между данными.

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

Статья закончилась. Вопросы остались?
Комментарии 0
Подписаться
Я хочу получать
Правила публикации
Редактирование комментария возможно в течении пяти минут после его создания, либо до момента появления ответа на данный комментарий.