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

Поделись знанием:
Это текущая версия страницы, сохранённая Ping08Bot (обсуждение | вклад) в 14:12, 12 сентября 2016. Вы просматриваете постоянную ссылку на эту версию.

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

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

Описание

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

Сетевая БД состоит из набора экземпляров определенного типа записи и набора экземпляров определенного типа связей между этими записями.

Тип связи определяется для двух типов записи: предка и потомка. Экземпляр типа связи состоит из одного экземпляра типа записи предка и упорядоченного набора экземпляров типа записи потомка. Для данного типа связи L с типом записи предка P и типом записи потомка C должны выполняться следующие два условия:

  • каждый экземпляр типа записи P является предком только в одном экземпляре типа связи L;
  • каждый экземпляр типа записи C является потомком не более чем в одном экземпляре типа связи L.

Аспект манипуляции

Примерный набор операций манипулирования данными:

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

Аспект целостности

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

Достоинства

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

Недостатки

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

История

Сетевая модель была одним из первых подходов, использовавшимся при создании баз данных в конце 50-х — начале 60-х годов. Активным пропагандистом этой модели был Чарльз Бахман. Идеи Бахмана послужили основой для разработки стандартной сетевой модели под эгидой организации CODASYL. После публикации отчетов рабочей группы этой организации в 1969, 1971 и 1973 годах многие компании привели свои сетевые базы данных более-менее в соответствие со стандартами CODASYL. До середины 70-х годов главным конкурентом сетевых баз данных была иерархическая модель данных, представленная ведущим продуктом компании IBM в области баз данных — IBM IMS[1].

В конце 60-х годов Эдгаром Коддом была предложена реляционная модель данных и после долгих и упорных споров с Бахманом[2] реляционная модель приобрела большую популярность и теперь является доминирующей на рынке СУБД.

Сетевые СУБД

Сетевая СУБДСУБД, построенная на основе сетевой модели данных.

К основным понятиям сетевой модели базы данных относятся: уровень, элемент (узел), связь.

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

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

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

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

Список самых значимых сетевых СУБД на 1978 год[3]:

  • IDS (Integrated Data Store) компании General Electric — самая первая сетевая СУБД, разработаная Чарльзом Бахманом в 1960 г.
  • IDS/2 или IDS/II) компании Honeywell, купившей IDS у General Electric, позднее — компании Bull[4][5]
  • Integrated Database Management System (IDMS) компании Cullinet, развитие IDS на основе её исходных кодов
  • DMS-1100 (для мейнфреймов UNIVAC 1100) и DMS-90 (для мини-компьютеров, первый релиз — ноябрь 1974) компании UNIVAC
  • DBMS-10 компании DEC для Decsystem-10 и Decsystem-20
  • CDC DMS-170
  • Burroughs Data Management System (DMS-2[6]). Продукт представлен на рынке в октябре 1974 года.

Другие подобные СУБД:К:Википедия:Статьи без источников (тип: не указан)[источник не указан 3511 дней]

Примечания

  1. Liu and Ozsu, 2009, p. 1900.
  2. Знаменитый спор под названием "The Great Debate произошел в 1974 году на конференции ACM SIGMOD Workshop on Data Description, Access, and Control, где Бахман и Кодд решали одну и ту же бизнес-задачу, используя каждый свой подход. Кодд решил её правильно, хоть и не с первого раза, а Бахман предложил громозкое решение, которое оказалось неверным
  3. [books.google.co.jp/books?id=ICoe1vr9x3kC&lpg=PA107&dq=%22DMS-1100%22&hl=ru&pg=PA106#v=onepage&q&f=false Computerworld 5 июн 1978, стр.160 — обзор главных СУБД на то время]
  4. Celko, 2012, p. 6.
  5. [books.google.co.jp/books?id=ICoe1vr9x3kC&lpg=PA107&dq=DMS%201100%20UNIVAC&pg=PA105-IA6#v=onepage&q=DMS%201100%20UNIVAC&f=false Computerworld 5 Jun 1978// Data Base Systems: Design, Implementation and Management, Part III]
  6. или DMS-II см. [books.google.co.jp/books?id=ICoe1vr9x3kC&lpg=PA109&ots=jrw9dOMiNf&dq=dbms-11%20dec&hl=ru&pg=PA109#v=onepage&q=dbms-11%20dec&f=false Computerworld 5 июн 1978]
  7. [www.shuklin.com/ai/ht/ru/cerebrum/ Cerebrum : Сетевая объектно-ориентированная система управления базой знаний]

Литература

  • Ling Liu, M. Tamer Ozsu. [books.google.co.jp/books?id=_LwnAQAACAAJ Encyclopedia of Database Systems]. — Springer Science, 2009. — 3818 p. — ISBN 9780387355443. (англ.)
  • Joe Celko. [books.google.co.jp/books?isbn=0123877334 Trees and Hierarchies in SQL for Smarties, 2nd Edition]. — Morgan Kaufmann, 2012. — 296 p. — ISBN 0123877334. (англ.)

Ссылки

  • С. Кузнецов. [www.citforum.ru/database/advanced_intro/ Базы данных. Вводный курс] ([citforum.ru/database/osbd/glava_12.shtml 3.3. Сетевые системы]) (рус.)