СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до 12.04.2025

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

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

Категория: Информатика

Нажмите, чтобы узнать подробности

Данный методический материал содержит презентацию к уроку "Иерархическая и сетевая модели данных". Полезен при изучении  дисциплины МДК.03.02 " Системы управления базами данных"  специальности 09.02.01 СПО углубленной подготовки  

Просмотр содержимого документа
«Иерархическая и сетевая модели данных»

Занятие №7 Теоретико-графовые модели данных

Занятие №7

Теоретико-графовые модели данных

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

Теоретико-графовые модели отражают совокупность объектов реального мира в виде графа взаимосвязанных информационных объектов.

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

Однако до сих пор существуют системы, работающие на основе этих моделей.

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

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

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

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

 Основными информационными единицами в иерархической модели являются:  база данных (БД), сегмент и поле .   Поле  данных определяется как минимальная, неделимая  единица  данных, доступная пользователю с помощью  СУБД. Сегмент  в терминологии Американской Ассоциации по базам данных DBTG ( Data   Base  Task  Group ) называется  записью , при этом в рамках иерархической модели определяются два понятия:  тип сегмента   или  тип записи   и  экземпляр сегмента   или  экземпляр записи . Тип сегмента —  это поименованная совокупность типов элементов данных, в него входящих.  Экземпляр сегмента  образуется из конкретных значений полей или элементов данных, в него входящих.  Каждый тип сегмента в рамках иерархической модели образует некоторый набор однородных записей.

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

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

  • Сегмент  в терминологии Американской Ассоциации по базам данных DBTG ( Data   Base  Task  Group ) называется  записью , при этом в рамках иерархической модели определяются два понятия:  тип сегмента   или  тип записи   и  экземпляр сегмента   или  экземпляр записи .
  • Тип сегмента —  это поименованная совокупность типов элементов данных, в него входящих. 
  • Экземпляр сегмента  образуется из конкретных значений полей или элементов данных, в него входящих.

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

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

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

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

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

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

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

Иногда исходные  сегменты  называют сегментами-предками , а подчиненные  сегменты  называют сегментами-потомками

  Пример иерархической связи между сегментами

Пример иерархической связи между сегментами

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

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

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

Каждая физическая  БД  удовлетворяет следующим иерархическим ограничениям:

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

Существует различие между сегментом и типом сегмента — оно такое же, как между типом переменной и самой переменной: сегмент является экземпляром типа сегмента . 

Между экземплярами сегментов также существуют иерархические связи. Рассмотрим, например, иерархический  граф , представленный на рисунке

Между экземплярами сегментов также существуют иерархические связи. Рассмотрим, например, иерархический  граф , представленный на рисунке

 Каждый тип сегмента может иметь множество соответствующих ему экземпляров. Между экземплярами сегментов также существуют иерархические связи.  На рисунке ниже представлены 2 экземпляра иерархического дерева соответствующей структуры

Каждый тип сегмента может иметь множество соответствующих ему экземпляров. Между экземплярами сегментов также существуют иерархические связи.

На рисунке ниже представлены 2 экземпляра иерархического дерева соответствующей структуры

Экземпляры-потомки одного типа, связанные с одним экземпляром сегмента-предка , называют

Экземпляры-потомки одного типа, связанные с одним экземпляром сегмента-предка , называют " близнецами ". Так, для нашего примера экземпляры b1, b2 и b3 являются "близнецами", но экземпляр b4 подчинен другому экземпляру родительского сегмента, и он не является "близнецом" по отношению к экземплярам b1, b2 и b3. Набор всех экземпляров сегментов , подчиненных одному экземпляру корневого сегмента, называется  физической записью . Количество экземпляров-потомков может быть разным для разных экземпляров родительских сегментов, поэтому в общем случае физические записи имеют разную длину. Так, используя принцип линейной записи иерархических графов можно представить данный пример с рисунка в виде двух записей:

В рамках иерархической модели выделяют языковые средства описания данных ( DDL ,  Data Definition Language ) и средства манипулирования данными ( DML ,  Data Manipulation Language ). Каждая физическая база описывается набором операторов, определяющих как ее логическую структуру, так и  структуру хранения БД .
  • В рамках иерархической модели выделяют языковые средства описания данных ( DDLData Definition Language ) и средства манипулирования данными ( DMLData Manipulation Language ).
  • Каждая физическая база описывается набором операторов, определяющих как ее логическую структуру, так и  структуру хранения БД .
Сетевая модель данных  Стандарт сетевой модели впервые был определен в 1975 году организацией CODASYL.  Базовыми объектами модели являются: элемент данных; агрегат данных; запись; набор данных.  Элемент данных —  то же, что и в иерархической модели, то есть минимальная информационная  единица , доступная пользователю с использованием  СУБД .  Агрегат данных   соответствует следующему уровню обобщения в модели. В модели определены агрегаты двух типов: агрегат типа вектор   и агрегат типа  повторяющаяся группа .  Агрегат данных  имеет имя, и в системе допустимо обращение к агрегату по имени. Агрегат типа  вектор  соответствует линейному набору элементов данных. Например, агрегат  Адрес  может быть представлен следующим образом:  Адрес    Город Улица Дом Квартира

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

Стандарт сетевой модели впервые был определен в 1975 году организацией CODASYL.

Базовыми объектами модели являются: элемент данных; агрегат данных; запись; набор данных.

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

Агрегат данных   соответствует следующему уровню обобщения в модели. В модели определены агрегаты двух типов: агрегат типа вектор   и агрегат типа  повторяющаяся группа .

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

Адрес

  Город Улица Дом Квартира

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

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

Зарплата

Месяц Сумма

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

Следующим базовым понятием в сетевой модели является понятие "Набор". Набором называется двухуровневый  граф , связывающий отношением " один-ко-многим " два типа записи.

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

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

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

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

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

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

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

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

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

 Экземпляров набора  Ведет занятия  будет 3 (по числу преподавателей), экземпляров набора  Занимается у  будет 4 (по числу групп). На рисунке представлены взаимосвязи экземпляров данных наборов.

Экземпляров набора  Ведет занятия  будет 3 (по числу преподавателей), экземпляров набора  Занимается у  будет 4 (по числу групп). На рисунке представлены взаимосвязи экземпляров данных наборов.

 Среди всех наборов выделяют специальный тип набора, называемый

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

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

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

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

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

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

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

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

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


Скачать

Рекомендуем курсы ПК и ППК для учителей

Вебинар для учителей

Свидетельство об участии БЕСПЛАТНО!