МОДЕЛИ ОРГАНИЗАЦИИ СЕТЕВЫХ БАЗ ДАННЫХ

Черкасов Д., студент 3 курса специальности «Информационные системы»

КГУ им. А.Байтурсынова

Бевз И.А., ст.преподаватель кафедры ИС КГУ им.А. Байтурсынова

 

Сетевая база данных относится к теоретико-графовым моделям, куда помимо сетевых еще входят иерархические базы данных. На основе математики сетевых баз данных существуют различные СУБД, это в основном коммерческие версии. У сетевых баз данных существуют характерные операции навигации, манипуляции и управления данными, а также специфическая структура.

Сети – это естественный способ представления отношений между объектами базы данных и связей между этими объектами. Под словом «объекты» в данном случае следует понимать таблицы баз данных или сущности.

Сетевые базы данных опираются на математику графов, конкретнее, сетевую модель данных можно представить в виде ориентированного графа. Направленный граф состоит из узлов и ребер. Узлы направленного графа – это ни что иное, как объекты сетевой базы данных, а ребра такого графа показывают связи между объектами сетевой модели данных, причем ребра показывают не только саму связь, но и тип связи (связь один к одному или связь один ко многим). Стоит заметить, что иерархическая модель баз данных является частным и упрощенным случаем сетевых баз данных.

Структура сетевых баз данных состоит из четырех компонентов, два из которых являются главными – запись и набор,  и два вспомогательных - это элемент данных и агрегат данных.

Элемент данных – это наименьшая информационная именованная единица данных, доступная пользователю, если провести аналогию с файловой системой, то это поле в файловой системе, если проводит аналогию с реляционной базой данных, то элемент данных – один столбец таблицы реляционной БД.

Агрегат данных – это следующий уровень обобщения данных сетевой модели. Агрегат данных – это именованная совокупность данных внутри одной записи.

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

Тип записей – эта совокупность подобных записей. Тип записей представляет некоторый класс реального мира.

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

Каждый экземпляр группового отношения характеризуется способами упорядочения подчиненных записей:

- произвольный;

- хронологический /очередь/;

- обратный хронологический /стек/;

- сортированный.

Если запись объявлена подчиненной в нескольких групповых отношениях, то в каждом из них может быть назначен свой способ упорядочивания.

Среди режимов включения подчиненных записей известны:

- автоматический, когда невозможно занести в БД запись без того, чтобы она была сразу же закреплена за неким владельцем;

- ручной - позволяет запомнить в БД подчиненную запись и не включать ее немедленно в экземпляр группового отношения. Эта операция позже инициируется пользователем.

Принято выделять три класса членства подчиненных записей в групповых отношениях:

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

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

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

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

- Добавить: внести запись в БД и, в зависимости от режима включения, либо включить ее в групповое отношение, где она объявлена подчиненной, либо не включать ни в какое групповое отношение;

- Включить в групповое отношение: связать существующую подчиненную запись с записью-владельцем;

- Переключить: связать существующую подчиненную запись с другой записью-владельцем в том же групповом отношении;

- Обновить: изменить значение элементов предварительно извлеченной записи;

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

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

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

К достоинствам модели сетевой базы данных можно отнести развитые средства управления данными во внешней памяти на низком уровне; возможность построения вручную эффективных прикладных систем; возможность экономии памяти за счет разделения подобъектов (в сетевых системах).

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

Для манипулирования и управления данными в сетевой модели данных используется ряд типичных операций, которые можно разделить на две группы: навигационные операции с данными и операции модификации данных.

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

- найти конкретную запись в наборе однотипных записей и сделать ее текущей;

- перейти от записи-владельца к записи-члену в некотором наборе;

- перейти к следующей записи в некоторой связи;

- перейти от записи-члена к владельцу по некоторой связи.

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

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

 

 

Список использованных источников:

1.      www.fnti.kiae.ru

2.      www.gpntb.ru