Основной конструкцией сетевой модели данных является

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

В настоящее время существуют три уровня абстракции для определения структуры базы данных [8]:

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

Таким образом, концептуальная модель является, по существу, моделью предметной области.

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

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

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

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

Это – первый уровень независимости данных.

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

Логическая БД состоит из поименованной совокупности записей. Она может содержать один или несколько типов записей, которые, в свою очередь, могут иметь различную структуру. Запись логической БД данных представляет собой совокупность сегментов, связанных между собой в иерархическую структуру (дерево). Она может содержать один или несколько типов сегментов, каждый из которых может иметь свой формат и свою длину.

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

Читайте также:  Социальная сеть одноклассников компьютерная версия

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

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

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

Концепция сетевой модели данных связана с именем известного специалиста в области систем обработки данных Ч. Бахмана. Будучи одним из идеологов СУБД сетевого типа, он оказал существенное влияние на разработку проекта Рабочей группы по базам данных КОДАСИЛ (CODA-SYL) – Ассоциации по языкам и системам обработки данных [6]. Эта ассоциация внесла большой вклад в разработку теории сетевых моделей данных, языков описания и манипулирования СУБД. Сетевые СУБД используют модель представления данных в виде произвольного графа. Основной конструкцией сетевой модели данных является набор. Набор представляет собой поименованную совокупность записей, образующих двухуровневую иерархическую структуру, причем один тип записи определяется как «владелец», а другие являются «членами» набора.

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

Рассмотрим сетевую модель данных об исполнителях и научно-исследовательских работах (рис. 2.3). Узлами сети могут быть отдельные экземпляры записи, которые являются единицей доступа. Сеть представляет собой более общую структуру в сравнении с иерархией (деревом), так как отдельный узел может иметь произвольное количество непосредственно старших узлов, также как и произвольное количество непосредственно подчиненных узлов. Это обеспечивает прямое представление отображения М:М, что, как было отмечено выше, является недостатком в иерархических моделях. В дополнение к экземплярам записей-узлов, соответствующих исполнителям и темам работ, введен третий тип записи, который называется связью или связующей записью. Экземпляр связующей записи представляет связь между одним исполнителем и одной научно-исследовательской работой темы и содержит данные, описывающие эту связь. В данном примере это количество работ, выполняемых исполнителем. Все экземпляры связующей записи, соответствующие одному исполнителю, помешаются в цепочку, начинающуюся и возвращающуюся к этому исполнителю. Аналогичным образом устанавливаются связи для каждой отдельной научной работы.

Читайте также:  Технические условия компьютерных сетей

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

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

Источник

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

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

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

Основные элементы сетевой модели данных

  • Элемент данных – минимальная информационная единица доступная пользователю.
  • Агрегат данных – именованная совокупность элементов данных внутри записи или другого агрегата, которую можно рассматривать как единое целое. Имя агрегата используется для его идентификации в схеме структуры данного более высокого уровня. Агрегат данных может быть простым, если состоит только из элементов данных, и составным, если включает в свой состав другие агрегаты.
  • Запись — совокупность агрегатов или элементов данных, отражающих некоторую сущность предметной области. Иными словами, запись — это агрегат, который не входит в состав никакого другого агрегата и может иметь сложную иерархическую структуру, поскольку допускается многократное применение агрегации. Имя записи используется для идентификации типа записи в схемах типов структур более высокого уровня.
  • Тип записей – эта совокупность подобных записей. Тип записей представляет некоторый класс реального мира.
  • Набор — именованная двухуровневая иерархическая структура, которая содержит запись владельца и запись (или записи) членов. Наборы отражают связи «один ко многим» и «один к одному» между двумя типами записей.
Читайте также:  Изменение топологии сети это

Наборы бывают нескольких видов:

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

Особенности построения сетевой модели данных

  • База данных может состоять из произвольного количества записей и наборов различных типов.
  • Связь между двумя записями может выражаться произвольным количеством наборов.
  • В любом наборе может быть только один владелец.
  • Тип записи может быть владельцем в одних типах наборов и членом в других типах наборов.
  • Тип записи может не входить ни в какой тип наборов.
  • Допускается добавление новой записи в качестве экземпляра владельца, если экземпляр-член отсутствует.
  • При удалении записи-владельца удаляются соответствующие указатели на экземпляры-члены, но сами записи-члены не уничтожаются (сингулярный набор).

Реализация групповых отношений в сетевой модели осуществляется с использованием указателей (адресов связи или ссылок), которые устанавливают связь между владельцем и членом группового отношения. Запись может состоять в отношениях разных типов (1:1, 1:N, M:N). Заметим, что если один из вариантов установления связи 1:1 очевиден (в запись – владелец отношения, поля которой соответствуют атрибутам сущности, включается дополнительное поле – указатель на запись – член отношения), то возможность представления связей 1:N и M:N таким же образом весьма проблематична. Поэтому наиболее распространенным способом организации связей в сетевых СУБД является введение дополнительного типа записей, полями которых являются указатели.

Источник

Оцените статью
Adblock
detector