Графическое изображение сетевой модели данных

Лекция 5 модели данных (продолжение)

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

Сетевые МОД и соответствующие СУБД построены на основе предложений КОДАСИЛ с основными типами структур данных: элемент, агрегат, запись, набор, база. МОД допускает существование записей с простой (только из элементов) в сложной внутренней структурой.

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

В модели КОДАСИЛ основным внутренним ограничением целостности является функциональная связь, т.е. с помощью наборов можно реализовать непосредственно связи типа 1:1, 1:М, М:1. В модели это внутреннее ограничение выражается утверждением: в конкретном экземпляре набора экземпляр записи — члена набора может иметь не более одного экземпляра записи — владельца набора. Отсюда следует второе внутреннее ограничение целостности — экземпляр записи может быть членом только одного экземпляра набора среди всех экземпляров набора одного типа (он может входить в состав двух и более экземпляров наборов, но разных типов).

Для представления связи типа М:М вводят вспомогательный тип записи и две функциональные связи типа 1:М ( рис. 1).

Еще одно внутреннее ограничение сетевой МОД — невозможность непосредственного представления данных, описывающих связи (между объектами), имеющие собственные атрибуты. В этом случае вводится вспомогательный тип записи.

Рис. 1. Пример представления связи типа «многие ко многим»

В модели можно представлять типы связей, заданных между несколькими типами объектов. Для этого используют многочленные наборы, которые представляют собой отношение между тремя или более типами записей, один из которых назначается владельцем набора, а остальные – членами набора (рис. 2)

Рис.2. Пример многочленного набора

В модели КОДАСИЛ еще сингулярный набор, владельцем которого является система. При его реализации возможен только один экземпляр набора этого типа. Это тип набора без записи – владельца (рис. 3).

Рис.3. Пример сингулярного типа набора

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

Читайте также:  Глобальные компьютерные сети бронирования

Любой вводимый в схему БД тип набора представляет приклад-ному программисту соответствующий путь доступа к специфицированным в этом наборе записям. Необходимость введения какого-либо типа набора в схему БД полностью определяется необходимостью реализации соответствующего пути доступа к данным в БД.

Эталонный вариант сетевой модели данных впервые был описан в проекте КОДАСИЛ. Сетевые (и, как частный случай, иерархические)СУБД получили наибольшее распространение на больших и мини-ЭВМ. Для отечественных ЭВМ создано несколько СУБД, поддерживающих сетевые модели данных: система СЕТЬ, реализующая под-множество предложений КОДАСИЛ: система БАНК, родственная зарубежной системе IDS; системы семейства СЕТОР, имеющие версии для ЭВМ разных классов.

2. ИЕРАРХИЧЕСКАЯ МОДЕЛЬ ДАННЫХ

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

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

Корневая запись обязательно должна содержать ключевые данные (ключ) о уникальным значением. Ключи некорневых записей должны иметь уникальные значения только в экземплярах групповых от ношений. Каждая запись идентифицируется полным (сцепленным ключом про которым понимается совокупность ключей всех записей от корневой по иерархическому пути. Например, для записи МБ (рис. 4) полный сцепленный ключ представляет конкатенацию ключей записей А1, В3, М5.

Рис. 4. Графическое изображение иерархической БД

В иерархической МОД действуют более жесткие внутренние ограничения на представление связей между объектами, чем в сетевой модели: 1) все типы связей функциональные, т.е. 1 : 1, 1 : М, М:1; 2) структура связей древовидная.

Иерархическая древовидная структура, ориентированная от корня, удовлетворяет следующим условиям (рис 5):

— иерархия всегда начинается о корневого узла;

— «на первом (верхнем) уровне ( i = 1) может находиться только один узел — корневой;

Читайте также:  Что такое компьютерная сеть контрольная работа

— на нижних уровнях (i=2,3. n) находятся порожденные (зависимые) узлы;

— каждый исходный узел может иметь один или несколько непосредственно порожденных (подобных) узлов;

— каждый порожденный узел i-го уровня связан только с одним непосредственно исходным (родительским) узлом (i-1)-го уровня иерархии дерева;

— доступ к каждому порожденному узлу выполняется через его непосредственно исходный узел;

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

Рис.5. Пример схемы иерархической базы данных

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

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

Рис. 5. Преобразование сетевой структуры в иерархическую

Так от записи ПОЛИКЛИНИКА, просматривая запись ЖИТЕЛЬ, можно для каждого жителя извлекать запись ОРГАНИЗАЦИЯ, Для обеспечения такой возможности при использовании иерархической модели данных необходимо дополнительное дублирование данных, так, в записи ПАЦИЕНТ следует хранить ключ записи ОРГАНИЗАЦИЯ. Поэтому после преобразования исходной сетевой модели в три иерархические модели сведения о жителе будут содержаться в трех записях: ПАЦИЕНТ, СОТРУДНИК, НАЛАДЧИК. Состав данных в этих записях будет различным (у пациента – медицинские данные, у сотрудника – производственные), но часть сведений будет дублироваться (например, фамилия, адрес и т.п.). Такие записи часто называются парными. Ответственность за поддержание соответствия между парными записями ложится на пользователя (модель данных этого соответствия не обеспечивает).

Сетевые структуры могут быть простыми ( отсутствуют связи «многие ко многим») и сложными (допускаются связи N:M). С помощью введения избыточности можно переходить от сложной сети к простой, от простой к древовидной. При упрощении сложной сети простым повторением информации не обойтись. В этом случае создается новый узел вместо связи N:M, который составляется как сцепление первичных ключей соединяемых записей. Этот узел выполняет роль соотношения N:M.

Источник

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

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

На рис. 25.3изображена сетевая структура базы данных в виде графа.

Рис.25.3. Графическое изображение сетевой структуры

Единственное отношение представляет собой сложную связь между записями в обоих направлениях.

Реляционная модель данных

Понятие реляционный(англ.relation отношение) связано с разработками известного американского специалиста в области систем баз данных Е. Кодда.

Читайте также:  Построение компьютерных сетей в visio

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

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

Реляционной таблицей можно представить информацию о студентах, обучающихся в вузе (табл.2).

Пример реляционной таблицы

Отношения представлены в виде таблиц,строки которых соответствуют кортежам илизаписям,а столбцы —атрибутам отношений, доменам,полям.

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

Чтобы связать две реляционные таблицы, необходимо ключ первой таблицы ввести в состав ключа второй таблицы (возможно совпадение ключей); в противном случае нужно ввести в структуру первой таблицы внешний ключ ключ второй таблицы. На рис.25.4. показан пример реляционной модели, построенной на основе отношений: СТУДЕНТ, СЕССИЯ, СТИПЕНДИЯ.

Рис.25.4. Пример реляционной модели.

Таблицы СТУДЕНТ И СЕССИЯ имеют совпадающие ключи (Номер), что дает возможность легко организовать связь между ними. Таблица СЕССИЯ имеет первичный ключ Номер и содержит внешний ключ Результат, который обеспечивает ее связь с таблицей СТИПЕНДИЯ.

25.1.Реляционный подход к построению инфологической модели

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

Информационный объект определенного реквизитного состава и структуры образует класс (тип), которому присваивается уникальное имя (символьное обозначение), например Студент, Сессия, Стипендия.

Информационный объект имеет множество реализации —экземпляров, каждый из которых представлен совокупностью конкретных значений, реквизитов и идентифицируется значением ключа (простого —один реквизит или составного —несколько реквизитов). Остальные реквизиты информационного объекта являются описательными. При этом одни и те же реквизиты в одних информационных объектах могут быть ключевыми, а в других—описательными. Информационный объект может иметь несколько ключей.

Источник

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