Языки определения данных в сетевой модели

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

Вопрос13! Сетевая модель данных. Одна из первых сетевых моделей данных, разработанная группой codasyl (Conference of Data System Languages), была предложена в 1969 г. И развивалась до 80-х годов.

(Оригинал смотри здесь http://coronet.iicm.tugraz.at/wbtmaster/allcoursescontent/netlib/library.htm)

Первоначально сетевая модель замышлялась как инструмент для программистов. В качестве базового языка программирования был выбран Cobol.

К известным сетевым системам управления базами данных относятся: DBMS, IDMS, TOTAL, VISTA, СЕТЬ, СЕТОР, КОМПАС и др.

Основное достоинство сетевой модели – это высокая эффективность затрат памяти и оперативность.

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

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

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

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

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

Рис. 18. Представление связей в сетевой модели данных

Рис. 19. Пример сетевой модели данных

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

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

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

  • Добавить – внести запись в базу данных.
  • Извлечь – извлечь запись из базы данных.
  • Обновить – изменить значение элементов предварительно извлеченной записи.
  • Удалить – убрать запись из базы данных.
  • Включить в групповое отношение – связать существующую подчиненную запись с записью-владельцем.
  • Исключить из группового отношения – разорвать связь между записью-владельцем и записью-членом.
  • Переключить – связать существующую подчиненную запись с другой записью-владельцем в том же групповом отношении.

________________________________________________________________________________ Базовыми объектами сетевой модели являются:

  • элемент данных;
  • агрегат данных;
  • запись;
  • набор данных.

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

  • агрегат типа вектор и
  • агрегат типа повторяющаяся группа.

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

Адрес
Город Улица дом квартира

Агрегат типа повторяющаясягруппа соответствует совокупности векторов данных. Например, агрегат Зарплата соответствует типу повторяющаяся группа с числом повторений 12.

Зарплата
Месяц Сумма
. .

Записью называется совокупность агрегатов или элементов данных, моделирующая некоторый класс объектов реального мира. Понятие записи соответствует понятию «сегмент» в иерархической модели. Для записи, так же как и для сегмента, вводятся понятия типа записи и экземпляра записи. Следующим базовым понятием в сетевой модели является понятие «Набор». Набором называется двухуровневый граф, связывающий отношением «один-ко-многим» два типа записи. Набор фактически отражает иерархическую связь между двумя типами записей. Родительский тип записи в данном наборе называется владельцем набора, а дочерний тип записи — членом того же набора. Для любых двух типов записей может быть задано любое количество наборов, которые их связывают. Фактически наличие подобных возможностей позволяет промоделировать отношение «многие-ко-многим» между двумя объектами реального мира, что выгодно отличает сетевую модель от иерархической. В рамках набора возможен последовательный просмотр экземпляров членов набора, связанных с одним экземпляром владельца набора. Между двумя типами записей может быть определено любое количество наборов: например, можно построить два взаимосвязанных набора. Существенным ограничением набора является то, что один и тот же тип записи не может быть одновременно владельцем и членом набора. В качестве примера рассмотрим таблицу, на основе которой организуем два набора и определим связь между ними:

Читайте также:  Протокол ftp это протокол сетевого уровня
Преподаватель Группа День недели пары Аудитория Дисциплина
Иванов 4306 Понедельник 1 22-13 КИД
Иванов 4307 Понедельник 2 22-13 КИД
Карпова 4307 Вторник 2 22-14 БЗ и ЭС
Карпова 4309 Вторник 4 22-14 БЗ и ЭС
Карпова 4305 Вторник 1 22-14 БД
Смирнов 4306 Вторник 3 23-07 ГВП
Смирнов 4309 Вторник 4 23-07 ГВП

Экземпляров набора Ведет занятия будет 3 (по числу преподавателей), экземпляров набора Занимается у будет 4 (по числу групп). На рис.20представлены взаимосвязи экземпляров данных наборов. Рис. 20. Пример взаимосвязи экземпляров двух наборов Среди всех наборов выделяют специальный тип набора, называемый «Сингулярным набором», владельцем которого формально определена вся система. Сингулярный набор изображается в виде входящей стрелки, которая имеет собственно имя набора и имя члена набора, но у которой не определен тип записи «Владелец набора». Например, сингулярный набор М. Сингулярные наборы позволяют обеспечить доступ к экземплярам отдельных типов данных, поэтому если в задаче алгоритм обработки информации предполагает обеспечение произвольного доступа к некоторому типу записи, то для поддержки этой возможности необходимо ввести соответствующий сингулярный набор. В общем случае сетевая база данных представляет совокупность взаимосвязанных наборов, которые образуют на концептуальном уровне некоторый граф.

Источник

22. Сетевая модель данных. Язык описания данных (ddl) в сетевой модели.

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

Язык, используемый для определения такой структуры, называется языком определения данных (data definition language, DDL). В текстовом DDL-файле перечисляются названия таблиц, указаны названия столбцов этих таблиц и описано их содержимое, определены индексы.

Структура БД может быть определена не только с помощью DDL в текстовом формате. Это может быть и графический способ задания структуры базы данных. На серверах и больших ЭВМ применяются как текстовые, так и графические средства. Например, в Oracle и SQL Server для определения данных могут применяться оба способа.

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

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

20. Реляционная модель данных. Операции реляционной алгебры, выполняемые над отношениями.

В основе реляционной модели лежит реляционнное отношение. Отношение – это некоторое подмножество декартова произведения одного или более доменов. Домен – это множество (набор) однородных значений. Декартовым произведением доменов D1, D 2, …, D n называется множество всех кортежей (d1, d2,…,dn) длины n, то есть состоящих из n элементов – по одному элементу из каждого домена. Отношение степени 1 называется унарным, степени 2 – бинарным, степени 3 — тернарное, а степени n – арным. Число кортежей в этом подмножестве называется кардинальным числом отношения. Арность кортежа определяет арность отношения. Отношение имеет простую графическую интерпретацию, оно может быть представлено в виде таблицы, столбцы которой соответствуют вхождениям доменов в отношение, а строки – наборам из n значений, взятых из исходных доменов. Тогда можно дать следующее определение отношению. Отношение (relation) – это двумерная таблица. Каждая строка в таблице содержит данные, относящиеся к некоторому объекту или его части. Каждый столбец таблицы описывает какой-либо атрибут этого объекта. Иногда строки называются кортежами (tuples), а столбцы – атрибутами (attributes).

Объединением отношений называется отношение, содержащее множество кортежей принадлежащих либо первому, либо второму исходным отношениям, либо обоим одновременно: R1 = ; R2 =

Разностью отношений R1, R2 (R=R1\R2) называется множество кортежей принадлежащих R1, но не принадлежащих R2. Формат операции разности имеет следующий вид: R1 = ; R2 =

Пересечением отношений R1 и R2 называется отношение R той же арности, что и R1, R2 состоящее из кортежей принадлежащих одновременно как R1, так и R2. Формат операции пересечения имеет следующий вид: R=R1?R2=.

Операция произведения. Эту операцию можно реализовывать над отношениями разной арности.

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

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

Источник

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