Каким отношением является сетевая модель. Сетевые базы данных. Контрольные вопросы и задания

Страница 1
Тема 7
Лекция № 7
СЕТЕВАЯ МОДЕЛЬ ДАННЫХ


  1. Сетевые базы данных

Информационными конструкциями в сетевой модели данных являются отношения и веерные отношения. Понятие "отношения" уже рассматривалось применительно к реляционной модели данных и будет использоваться здесь без изменений, хотя в некоторых сетевых СУБД допускаются отношения с многоуровневой (три и более) структурой.

Сетевая БД представляется как множество отношений и веерных отношений. Отношения разделяются на основные и зависимые.

Веерным отношением W(R,S) называется пара отношений, состоящая из одного основного R, одного зависимого отношения S и связи между ними при условии, что каждое значение зависимого отношения связано с единственным значением основного отношения.

Названное условие является ограничением, характерным для сетевой модели данных в целом. Способ реализации этого ограничения в памяти ЭВМ неодинаков у различных сетевых СУБД.

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

Сетевые базы данных в зависимости от ограничений на вхождение отношений в веерные отношения разделяются на многоуровневые сети и двухуровневые сети.

Ограничение двухуровневых сетей состоит в том, что каждое отношение может существовать в одной из перечисленных ниже ролей:

Вне каких-либо веерных отношений,

В качестве основного отношения в любом количестве веерных отношений,

В качестве зависимого отношения в любом количестве веерных отношений.

Запрещается существование отношения в качестве основного в одном контексте и одновременно в качестве зависимого в другом контексте.

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

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

Для двухуровневых сетевых СУБД вводятся еще два ограничения (с теоретической точки зрения необязательные):

Первичный ключ основного отношения может быть только одноатрибутным,

Веерное отношение существует, если первичный ключ основного отношения является частью первичного ключа зависимого отношения.
2. Организация веерного отношения в памяти ЭВМ
В структуру основного и зависимого отношений вводится дополнительный атрибут, называемый адресом связи. Значения адресов связи совместно обеспечивают в веерном отношении соответствие каждого значения зависимого отношения S с единственным значением основного отношения R.

Значение отношения при хранении в памяти ЭВМ часто называется записью. Адресом связи называется атрибут в составе записи, в котором хранится начальный адрес или номер следующей обрабатываемой записи.

Связь значений зависимого отношения с единственным значением основного отношения в простейшем случае обеспечивается следующим образом. Адрес связи некоторой записи основного отношения указывает на одну из записей зависимого отношения (значением адреса связи основного отношения является начальный адрес этой записи зависимого отношения), адрес связи указанной записи зависимого отношения - на следующую запись зависимого отношения, связанную с той же записью основного отношения и т.д. Последняя запись зависимого отношения в этой цепочке адресует названную выше запись основного отношения. Получается кольцевая структура адресов связи, называемая веером, где роль "ручки" веера играет запись основного отношения. На графических иллюстрациях адрес связи изображается стрелкой, направленной от адреса связи данной записи к той записи, чей начальный адрес (номер) служит значением этого адреса связи. На рис. 2.2 показаны структуры и значения веерных отношений двух простых сетевых двухуровневых БД. Атрибуты первичного ключа во всех случаях помечены #.

Схема сетевой БД содержит следующие компоненты:

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

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

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

В схеме сетевой БД отношения и веерные отношения часто трактуются как файлы и связи, что позволяет рассматривать сетевую структуру как множество файлов

F = {Fl(Xl),F2(X2),...) Fi(Xi),...,Fn(Xn)}, где Xi - атрибуты ключа в файле Fi.

Дополнительно вводится граф сетевой структуры В с вершинами {Xl,X2,...,Xi,...,Xn}. Дуга в графе В существует, если Xi является частью Xj и Fj является подмножеством Fi. Последнее условие имеет тот же смысл, что и синтаксическое включение отношений в реляционной модели данных. Здесь предполагается, что ключ основного файла содержится в зависимом файле. Граф В аналогичен графу соединений для реляционной БД.

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

Для множества файлов F ациклической базы данных DBA вполне применима операция

m(DBA) = F1 & F2 & ... & Fi & ...& Fn,

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


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

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

3. Алгоритм получения двухуровневой структуры сети

1. Для каждой функциональной зависимости вида А -» В создается файл Fi(A,B)- Каждый блок взаимно-однозначных соответствий также порождает файл с ключом, равным старшему по объему понятия атрибуту.

В нашем примере будут созданы следующие файлы (ключи помечены знаком #):

Р1(НИИ #, Директор, Адрес),

Р2(Отдел #, НИИ, Ксотр),

РЗ(Тема #, Датанач, Датакон, Приор),

Р4(ФИО #, Отдел),

Р5(Тема #, Работа #, ФИО #, Прод),

Р6(Тема #, Заказ #, Обфин).

2. У всех пар файлов, полученных на шаге 1, проверяется условие для ключей (Ki является частью Kj). Если оно соблюдаемся, то из соответствующих файлов создается веерное отношение Wij(Fi,Fj). В нашем примере получим W35(F3,F5), W45(F4,F5), W36(F3,F6).

3. Если на шаге 2 будут получены два веерных отношения Wij и Wjk, то все атрибуты файла Fi передаются в файл Fj, и Fi вместе с Wij уничтожаются. В нашем примере таких веерных отношений нет.

4. Атрибуты, не вошедшие в состав веерных отношений на шаге 2, добавляются в те файлы Fn (и содержащие Fn веерные отношения), где они будут неключевыми. При наличии нескольких подходящих файлов предпочтение отдается основным файлам. Если требуемые Fn отсутствуют, то создается новый файл из атрибутов первичного ключа, и повторяются шаги 2, 3,4.

В нашем примере F4 расширяется атрибутами НИИ, Директор, Адрес, Ксотр.

На рис.2.3 показана структура соответствующей двухуровневой БД.

Структуры основных отношений показаны в верхней части рисунка, а структуры зависимых отношений - внизу.

Перед рассмотрением операций в сетевой базе данных следует отметить, что существуют 2 различных подхода к обработке данных средствами СУБД.

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

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

При выборке в зависимом отношении текущей записью становится следующая запись зависимого отношения относительно той, которая раньше была текущей в зависимом отношении. Условие выборки содержит указание на текущую запись в основном отношении, а также на имя зависимого отношения и имя веерного отношения.

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

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

страница 1

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

Историческая справка

В 1971 группа DTBG (Database Task Group ) представила в американский национальный институт стандартов отчет, который послужил в дальнейшем основой для разработки сетевых систем управления базами данных. Стандарт сетевой модели был создан в 1975 году организацией CODASYL (Conference of Data System Languages ), которая определила базовые понятия модели и формальный язык описания.

Типичным представителем систем, основанных на сетевой модели данных, является СУБД IDMS (Integrated Database Management System ), разработанная компанией Cullinet Software, Inc. и изначально ориентированная на использования на мейнфреймах компании IBM. Архитектура системы основана на предложениях DBTG организации CODASYL. В настоящее время IDMS принадлежит компании Computer Associates .

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

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

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

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

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

Преимущества

  1. Стандартизация . Появление стандарта CODASYL, который определил базовые понятия модели и формальный язык описания.
  2. Быстродействие . Быстродействие сетевых баз данных сравнимо с быстродействием иерархических баз данных.
  3. Гибкость . Множественные отношения предок/потомок позволяют сетевой базе данных хранить данные, структура которых была сложнее простой иерархии.
  4. Универсальность . Выразительные возможности сетевой модели данных являются наиболее обширными в сравнении с остальными моделями.
  5. Возможность доступа к данным через значения нескольких отношений (например, через любые основные отношения).

Недостатки

  1. Жесткость . Наборы отношений и структуру записей необходимо задавать наперёд. Изменение структуры базы данных ведет за собой перестройку всей базы данных.. Связи закреплены в записях в виде указателей. При появлении новых аспектов использования этих же данных может возникнуть необходимость установления новых связей между ними. Это требует введения в записи новых указателей, т.е. изменения структуры БД, и, соответственно, переформирования всей базы данных.
  2. Сложность . Сложная структура памяти.

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

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

Использования сетевой модели

Сетевые модели также создавались для мало ресурсных ЭВМ. Это достаточно сложные структуры, состоящие из "наборов" – поименованных двухуровневых деревьев. "Наборы" соединяются с помощью "записей-связок", образуя цепочки и т.д. При разработке сетевых моделей было выдумано множество "маленьких хитростей", позволяющих увеличить производительность СУБД, но существенно усложнивших последние. Прикладной программист должен знать массу терминов, изучить несколько внутренних языков СУБД, детально представлять логическую структуру базы данных для осуществления навигации среди различных экземпляров, наборов, записей и т.п. Один из разработчиков операционной системы UNIX сказал "Сетевая база – это самый верный способ потерять данные".

На этом рисунке показаны три типа записи: Отдел , Служащие и Руководитель и три типа связи: Состоит из служащих , Имеет руководителя и Является служащим .

В типе связи Состоит из служащих Отдел , а типом записи-потомком – Служащие Отдел со многими экземплярами типа записи Служащие , соответствующими всем служащим данного отдела).

В типе связи Имеет руководителя типом записи-предком является Отдел , а типом записи-потомком – Руководитель (экземпляр этого типа связи связывает экземпляр типа записи Отдел Руководитель , соответствующим руководителю данного отдела).

Наконец, в типе связи Является служащим типом записи-предком является Руководитель , а типом записи-потомком – Служащие (экземпляр этого типа связи связывает экземпляр типа записи Руководитель с одним экземпляром типа записи Служащие , соответствующим тому служащему, которым является данный руководитель).

Общие положения

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

Модель данных - совокупность структур данных и операций их обработки.

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

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

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

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

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

К каждой записи базы данных существует только один (иерархический) путь от корневой записи. Например, как видно из рис. 15.8, для записи С4 путь проходит через записи А и В3.

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

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

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

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

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

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

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


Рис. 15.9. Пример иерархической структуры БД

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


Рис. 15.11. Пример сетевой структуры БД

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

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

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

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

"каждый элемент таблицы – один элемент данных;

все столбцы в таблице однородные, т.е. все элементы в столбце имеют одинаковый тип (числовой, символьный и т.д.) и длину;

каждый столбец имеет уникальное имя;

одинаковые строки в таблице отсутствуют;

порядок следования строк и столбцов может быть произвольным.

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



Рис. 15.12. Пример реляционной таблицы

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

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

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

Пример 15.7. На рис. 15.13 показан пример реляционной модели, построенной на основе отношений: СТУДЕНТ, СЕССИЯ, СТИПЕНДИЯ.

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

СТУДЕНТ (Номер, Фамилия, Имя, Отчество, Пол, Дата рождения, Группа);

СЕССИЯ (Номер, Оценка1, Оценка2, Оценка3, Оценка4, Результат);

СТИПЕНДИЯ (Результат, Процент).

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

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Размещено на http://www.allbest.ru

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

2. Структуризация данных в СМД

3. Основные операции

4. Ограничения целостности

5. Достоинства и недостатки СМД

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

1. СЕТЕВАЯ МОДЕЛЬ ДАННЫХ

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

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

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

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

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

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

ИСТОРИЧЕСКАЯ СПРАВКА

В 1971 группа DTBG (Database Task Group) представила в американский национальный институт стандартов отчет, который послужил в дальнейшем основой для разработки сетевых систем управления базами данных. Стандарт сетевой модели был создан в 1975 году организацией CODASYL (Conference of Data System Languages), которая определила базовые понятия модели и формальный язык описания.

Типичным представителем систем, основанных на сетевой модели данных, является СУБД IDMS (Integrated Database Management System), разработанная компанией Cullinet Software, Inc. и изначально ориентированная на использования на мейнфреймах компании IBM. Архитектура системы основана на предложениях DBTG организации CODASYL. В настоящее время IDMS принадлежит компании Computer Associates.

2. СТРУКТУРИЗАЦИЯ ДАННЫХ В СЕТЕВЫХ МОДЕЛЯХ ДАННЫХ

Структуризация данных базируется на использовании концепций "агрегации" и "обобщения". Один из первых вариантов структуризации данных был предложен Ассоциацией по языкам обработки данных (Conference on Data Systems Languages, CODASYL):

Элемент данных - минимальная информационная единица доступная пользователю.

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

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

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

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

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

1. С одними и теми же типами записей, но разными типами наборов.

2. Наборы из трех записей и более, в том числе с обратной связью.

3. Сингулярный набор (только один экземпляр). У такого набора нет естественного владельца и в качестве него выступает система.
В дальнейшем такие наборы могут приобрести запись - владельца.

Рисунок 1 - Структуризация данных

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

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

Связь между двумя записями может выражаться произвольным количеством наборов.

В любом наборе может быть только один владелец.

Тип записи может быть владельцем в одних типах наборов и членом
в других типах наборов.

Тип записи может не входить ни в какой тип наборов.

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

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

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

3. ОСНОВНЫЕ ОПЕРАЦИИ

сетевая модель данный

Операция ЗАПОМНИТЬ позволяет занести в БД новую запись
и автоматически включить эту запись в групповые отношения, где она объявлена подчиненной с соответствующим режимом включения.

Операция ВКЛЮЧИТЬ В ГРУППОВОЕ ОТНОШЕНИЕ позволяет существующю запись связать с с записью-владельцем.

Операция ПЕРЕКЛЮЧИТЬ дает возможность подчиненную запись связать с записью-владельцем в том же групповом отношении.

Операция ОБНОВИТЬ изменять значения элементов записей, существующих в БД. Перед выполнением этого оператора соответствующая запись предварительно должна быть извлечена.

Операция ИЗВЛЕЧЬ позволяет последовательно (т.е. перебирая) извлечь запись. Запись можно извлечь по значению первичного ключа или используя групповые отношения, в которых они участвуют. Так, от владельца можно перейти к записям - членам, а от записи-члена перейти к владельцу группового отношения.

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

Операция ИСКЛЮЧИТЬ ИЗ ГРУППОВОГО ОТНОШЕНИЯ позволяет разорвать связь между записью-владельцем и записью-членом группового отношения, сохранив обе в БД.

Использования сетевой модели

Сетевые модели также создавались для мало ресурсных ЭВМ. Это достаточно сложные структуры, состоящие из "наборов" - поименованных двухуровневых деревьев. "Наборы" соединяются с помощью "записей-связок", образуя цепочки и т.д. При разработке сетевых моделей было выдумано множество "маленьких хитростей", позволяющих увеличить производительность СУБД, но существенно усложнивших последние. Прикладной программист должен знать массу терминов, изучить несколько внутренних языков СУБД, детально представлять логическую структуру базы данных для осуществления навигации среди различных экземпляров, наборов, записей и т.п. Один из разработчиков операционной системы UNIX сказал "Сетевая база - это самый верный способ потерять данные".

СУБД, поддерживающие сетевую модель, широко использовались на вычислительных системах серии IBM 360/370 (ЕС ЭВМ). В качестве примеров таких систем можно указать IDMS, UNIBAD (БАНК), аналоги СЕДАН, СЕТОР. На персональных компьютерах сетевые СУБД не получили широкого распространения. Примером сетевой СУБД для персонального компьютера является db_VISTA III. Отметим, что система db_VISTA реализована на языке С и поэтому является переносимой. Система может эксплуатироваться на ПЭВМ типа IBM PC, SUN, Macintosh.

4. ОГРАНИЧЕНИЯ ЦЕЛОСТНОСТИ

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

* явные (включаются в структуру базы данных с помощью средств языка контроля данных (DCL, Data Control Language))

*неявные (определяются самой структурой данных).

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

5. ДОСТОИНСТВА И НЕДОСТАТКИ СМД

Преимущества:

1.Стандартизация. Появление стандарта CODASYL, который определил базовые понятия модели и формальный язык описания.

2.Быстродействие. Быстродействие сетевых баз данных сравнимо
с быстродействием иерархических баз данных.

3.Гибкость. Множественные отношения предок/потомок позволяют сетевой базе данных хранить данные, структура которых была сложнее простой иерархии.

4.Универсальность. Выразительные возможности сетевой модели данных являются наиболее обширными в сравнении с остальными моделями.

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

Недостатки:

1. Жесткость. Наборы отношений и структуру записей необходимо задавать наперёд. Изменение структуры базы данных ведет за собой перестройку всей базы данных. Связи закреплены в записях в виде указателей. При появлении новых аспектов использования этих же данных может возникнуть необходимость установления новых связей между ними. Это требует введения в записи новых указателей, т.е. изменения структуры БД, и, соответственно, переформирования всей базы данных.

2. Сложность. Сложная структура памяти.

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

1. Сетевая модель данных [электронный ресурс] - Режим доступа http://ru.wikipedia.org/wiki/Сетевая _модель_данных

2. Кузнецов С.Д. Базы данных. Вводный курс. - М.: Майор,2008. - 176с.

Размещено на Allbest.ru

Подобные документы

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

    реферат , добавлен 28.11.2011

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

    реферат , добавлен 16.02.2012

    Характеристика реляционной, иерархической и сетевой моделей баз данных. Анализ методов проектирования (декомпозиция, синтез, объектная связь), организации, обновления, восстановления, ограничений, поддержания целостности данных на примере СУБД Ms Access.

    дипломная работа , добавлен 13.02.2010

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

    контрольная работа , добавлен 05.02.2011

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

    курсовая работа , добавлен 29.01.2011

    Сущность и предназначение сетевой модели данных TCP/IP. Уровень приложений TCP/IP. Схема работы веб-браузера. Транспортный уровень TCP/IP. Схема использования служб Ethernet протоколом IP. Этапы передачи данных узлом в реальной физической среде сети.

    доклад , добавлен 02.04.2012

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

    реферат , добавлен 19.12.2011

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

    курсовая работа , добавлен 10.06.2014

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

    курсовая работа , добавлен 08.02.2012

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

- — [Е.С.Алексеев, А.А.Мячев. Англо русский толковый словарь по системотехнике ЭВМ. Москва 1993] Тематики информационные технологии в целом EN network database systemNDBS …

сетевая СУБД фирмы Borland Int - — [Е.С.Алексеев, А.А.Мячев. Англо русский толковый словарь по системотехнике ЭВМ. Москва 1993] Тематики информационные технологии в целом EN Paradox LAN Pack … Справочник технического переводчика

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

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

Реляционная СУБД (РСУБД; иначе Система управления реляционными базами данных, СУРБД) СУБД, управляющая реляционными базами данных. Понятие реляционный (англ. relation отношение) связано с разработками известного английского специалиста в… … Википедия

Оптимизация запросов это 1) функция СУБД, осуществляющая поиск оптимального плана выполнения запросов из всех возможных для заданного запроса, 2) процесс изменения запроса и/или структуры БД с целью уменьшения использования вычислительных… … Википедия

Целью алгоритма соединения является реализация в конкретной СУБД операции соединения реляционной алгебры. Исходными данными для алгоритма являются два отношения (таблицы) и описание условия соединения. Результатом операции является отношение… … Википедия

Операция соединения (СУБД) реализация в конкретной СУБД операции соединения реляционной алгебры. Исходными данными для операции являются два отношения (таблицы) и описание условия соединения. Результатом операции является отношение… … Википедия

- (РСУБД; иначе Система управления реляционными базами данных, СУРБД) СУБД, управляющая реляционными базами данных. Понятие реляционный (англ. relation отношение) связано с разработками известного английского специалиста в области… … Википедия

Эта статья должна быть полностью переписана. На странице обсуждения могут быть пояснения. Объектно реляционная СУБД (ОРСУБД) реляционная СУБД (РСУБД), поддерживающая неко … Википедия



mob_info