Слайд 1ТЕОРЕТИКО-ГРАФОВЫЕ
МОДЕЛИ ДАННЫХ
Слайд 2Марченко Е.И.
04/10/2020
1. Иерархическая модель
данных
Слайд 3Марченко Е.И.
04/10/2020
Первая иерархическая СУБД IMS (Information Management System), фирмы IBM.
Слайд 4Марченко Е.И.
04/10/2020
Поле данных - минимальная неделимая единица данных, доступная пользователю
с помощью СУБД.
Сегмент - запись
Слайд 5Марченко Е.И.
04/10/2020
Тип сегмента — это поименованная совокупность типов элементов данных,
в него входящих.
Экземпляр сегмента образуется из конкретных значений полей
или элементов данных, в него входящих.
Слайд 6Марченко Е.И.
04/10/2020
Ключом называется набор элементов данных, однозначно идентифицирующих экземпляр сегмента.
Слайд 7Марченко Е.И.
04/10/2020
Пример иерархических связей между сегментами
Слайд 8Марченко Е.И.
04/10/2020
Схема иерархической БД представляет собой совокупность отдельных деревьев, каждое
дерево в рамках модели называется физической базой данных.
Слайд 9Марченко Е.И.
04/10/2020
Каждая физическая БД удовлетворяет следующим иерархическим ограничениям:
в каждой физической
БД существует один корневой сегмент, т.е. сегмент, у которого нет
логически исходного (родительского) типа сегмента;
каждый логически исходный сегмент может быть связан с произвольным числом логически подчиненных сегментов;
каждый логически подчиненный сегмент может быть связан только с одним логически исходным (родительским ) сегментом.
Слайд 11Марченко Е.И.
04/10/2020
Пример структуры иерархического дерева
Набор всех экземпляров сегментов, подчиненных одному
экземпляру корневого сегмента, называется физической записью.
Слайд 12Марченко Е.И.
04/10/2020
Пример двух экземпляров дерева
Слайд 14Марченко Е.И.
04/10/2020
Язык описания данных
иерархической модели
(DDL, Data Definition Language)
Слайд 15Марченко Е.И.
04/10/2020
Способ доступа определяет способ организации взаимосвязи физических записей.
1)
HSAM (hierarchical sequential access method) —иерархически последовательный метод;
2) HISAM (hierarchical
index sequential access method) — иерархически индексно-последовательный метод;
3) HDAM (hierarchical direct access method) — иерархически прямой метод;
4) HIDAM (hierarchical index direct access method) — иерархически индексно-прямой метод;
5) INDEX — индексный метод.
Слайд 16Марченко Е.И.
04/10/2020
Внешние модели
Внешняя модель представляет собой совокупность поддеревьев для физических
БД, с которыми работает данный пользователь. Каждый подграф внешней модели
в обязательном порядке должен содержать корневой тип сегмента соответствующий физической БД концептуальной модели.
Слайд 17Марченко Е.И.
04/10/2020
Представление внешней модели называется логической БД и определяется совокупностью
блоков связи данного приложения с физическими БД, входящими в концептуальную
схему БД.
Слайд 18Марченко Е.И.
04/10/2020
Блок связи — РСВ (program communication bloc) — описывает
связь с одной физической БД.
Совокупность блоков РСВ образует полное внешнее
представление данного приложения — блок спецификации программ (PSB, program specifying block).
Слайд 19Марченко Е.И.
04/10/2020
Пример иерархической БД
Слайд 21Марченко Е.И.
04/10/2020
Язык манипулирования данными в иерархических БД
(DML, Data Manipulation Language)
Слайд 22Марченко Е.И.
04/10/2020
1. Операторы поиска данных.
1). GET UNIQUE WHERE
2). GET NEXT WHERE
3).
GET NEXT <имя сегмента> WITHIN PARENT [where <дополнительные условия>]
Слайд 23Марченко Е.И.
04/10/2020
2. Операторы поиска данных с возможностью модификации.
Используются операторы поиска
данных, но в синтаксис добавляется слово HOLD:
GET HOLD UNIQUE
сегмента> WHERE <список поиска>
Слайд 24Марченко Е.И.
04/10/2020
3. Операторы модификации данных.
1). DELETE
2). UPDATE
3). INSERT< имя
сегмента >
Слайд 25Марченко Е.И.
04/10/2020
Преимуществами иерархической модели:
развитые средства управления данными во внешней памяти
на низком уровне;
возможность построения вручную эффективных прикладных систем;
возможность эффективного использования
памяти.
Слайд 26Марченко Е.И.
04/10/2020
Недостатки иерархической модели :
асимметрия поиска по симметричным запросам;
зависимость поиска
от соответствия иерархической структуры существующим связям в предметной области;
низкий уровень
языка запросов и манипулирования данными;
Слайд 27Марченко Е.И.
04/10/2020
трудность реализации «дружественных» интерфейсов пользователя;
аномалии вставки, удаления и обновления;
дублируемость
данных;
трудно реализовывать гибкие механизмы защиты данных, целостности, непротиворечивости.
Слайд 28Марченко Е.И.
04/10/2020
2. СЕТЕВАЯ МОДЕЛЬ ДАННЫХ
Слайд 29Марченко Е.И.
04/10/2020
Стандарт сетевой модели впервые был определен в 1975 году
организацией СОDASYL, которая определила базовые понятия модели и формальный язык
описания.
Базовыми объектами модели являются:
элемент данных;
агрегат данных;
запись;
набор данных.
Слайд 30Марченко Е.И.
04/10/2020
Элемент данных - минимальная информационная единица, доступная пользователю с
использованием СУБД.
(то же, что и в иерархической модели)
Слайд 31Марченко Е.И.
04/10/2020
Агрегат данных соответствует следующему уровню обобщения в модели.
В
модели определены агрегаты двух типов: агрегат типа вектор и агрегат
типа повторяющаяся группа.
Слайд 32Марченко Е.И.
04/10/2020
Записью называется совокупность агрегатов или элементов данных, моделирующая некоторый
класс объектов реального мира.
(соответствует понятию «сегмент» в иерархической модели.
Для записи, так же как и для сегмента, вводятся понятия типа записи и экземпляра записи)
Слайд 33Марченко Е.И.
04/10/2020
Набором называется двухуровневый граф, связывающий отношением «один-ко-многим» два типа
записи.
Слайд 35Марченко Е.И.
04/10/2020
Язык описания данных в сетевой модели
Слайд 36Марченко Е.И.
04/10/2020
Язык описания данных имеет разделы:
описание БД – области размещения;
описания
записей – элементов и агрегатов (каждого в отдельности);
описания наборов (каждого
в отдельности).
Слайд 37Марченко Е.И.
04/10/2020
Язык манипулирования данными в сетевой модели
Слайд 38Марченко Е.И.
04/10/2020
Навигационные операции осуществляют перемещение по БД путем прохождения по
связям, которые поддерживаются в схеме БД. В этом случае результатом
является новый единичный объект, который получает статус текущего объекта.
Слайд 39Марченко Е.И.
04/10/2020
Операции модификации осуществляют добавление новых экземпляров отдельных типов записей
и наборов, удаление экземпляров записей и наборов, модификацию отдельных составляющих
внутри конкретных экземпляров записей.
Слайд 40Марченко Е.И.
04/10/2020
указатели текущего состояния:
текущая запись процесса (код или ключ последней
записи, с которой работала данная программа);
текущая запись типа записи (для
каждого типа записи ключ последней записи с которой работала программа);
текущая запись типа набор (для каждого набора с владельцем Т1 и членом Т2 указывается, Т1 или Т2 были последней обрабатываемой записью).
Слайд 42Марченко Е.И.
04/10/2020
Контрольные вопросы
Определите иерархическую структуру данных.
Каковы операции манипулирования иерархической структурой
данных. Приведите примеры их использования.
Определите сетевую структуру данных.
Приведите примеры
операций сетевой структуры данных. Приведите примеры их использования.