Пиши Дома Нужные Работы

Обратная связь

Сетевые и иерархические модели данных

ТЕМА 2.

ИЕРАРХИЧЕСКИЕ, СЕТЕВЫЕ И РЕЛЯЦИОННЫЕ МОДЕЛИ ДАННЫХ.

 

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

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

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

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

 

Сетевые и иерархические модели данных

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

В СУБД, поддерживающих иерархические и сетевые модели данных, как правило, требуется производить настройкуна конкретную БД. При этом надо делать описание структуры базы данных средствами языка описания данных (ЯОД). Полученное описание подлежит генерации для формирования специального программного модуля, который используется при всех обращениях к базе данных. Изменения в структуре БД требуют корректировки описания модели и повторной генерации программного модуля [10,12].



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

Структуры данных сетевых и иерархических моделей

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

Элемент данных (атрибут) – это наименьшая поименованная структурная единица данных (аналог поля в файловых системах).

Агрегат данных – поименованное подмножество элементов данных или других агрегатов внутри записи. В агрегатах допускается множественный элемент, который содержит несколько значений элемента в одном экземпляре агрегата.

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

Связи объектов в сетевых и иерархических моделях данных

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

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

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

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

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

 

Сравнение сетевых и иерархических моделей

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

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

 

Рис.2.2. Иллюстрация особенностей моделей по топологии и доступу.

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

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

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

Основным достоинством сетевых моделей является:

§ отсутствие дублирования данных в различных объектах модели.

§ доступ к данным практически не имеет ограничений и возможен непосредственно к объекту любого уровня.

§ допустимы всевозможные запросы.

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

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

Операции обработки данных

По отношению к объектам (записям) сетевой модели осуществляются операции:

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

включить - включение уже существующей подчиненной записи в заданное групповое отношение;

извлечь – поиск записи любого типа;

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

удалить – удалить из БД экземпляр записи и все подчиненные ей записи;

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

обновить – изменить значения элементов в предварительно извлеченной записи (ключевые поля записей не изменяются);

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

 

ДОГОВОР №______

 

Дата

"__"______________, 20_ г.

Заказчик

код____________

наименование __________

АДРЕС

город______почт.индекс__________улица ______ ном. дома ___________

 

БАНК

наименование_______ расчетный счет_________

 

ИЗДЕЛИЕ Срок поставки (месяц) Мин. партия поставки Количество Сумма
Код Наиме нование Единица измерения Цена
               
               

 

Сумма всего __________

 

Ниже на рис.2.1 приведен пример отображения данных предметной области ДОГОВОРА в иерархическую модель, в которой имеются названные выше типы структур данных. Эти данные можно представить одной иерархической записью или несколькими.

Рис.2.1. Пример отображения данных в иерархическую модель

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

Рис.2.1. Пример отображения данных в сетевую модель

 

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

Рис.2.3. Пример базы данных, реализованной сетевой модель

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






ТОП 5 статей:
Экономическая сущность инвестиций - Экономическая сущность инвестиций – долгосрочные вложения экономических ресурсов сроком более 1 года для получения прибыли путем...
Тема: Федеральный закон от 26.07.2006 N 135-ФЗ - На основании изучения ФЗ № 135, дайте максимально короткое определение следующих понятий с указанием статей и пунктов закона...
Сущность, функции и виды управления в телекоммуникациях - Цели достигаются с помощью различных принципов, функций и методов социально-экономического менеджмента...
Схема построения базисных индексов - Индекс (лат. INDEX – указатель, показатель) - относительная величина, показывающая, во сколько раз уровень изучаемого явления...
Тема 11. Международное космическое право - Правовой режим космического пространства и небесных тел. Принципы деятельности государств по исследованию...



©2015- 2024 pdnr.ru Все права принадлежат авторам размещенных материалов.