Contenu connexe
Similaire à Управление данными (модели данных) (20)
Plus de Ural Federal University named after First President of Russia B.N. Yeltsin (20)
Управление данными (модели данных)
- 2. 2
2.1. Классификация моделей данных
Модель данных
- это некоторая абстракция, которая, будучи
применима к конкретным данным, позволяет
пользователям и разработчикам трактовать их
уже как информацию, то есть сведения,
содержащие не только данные, но и
взаимосвязь между ними.
(©) Владислав Лавров, vlavrov.com
- 3. 3
Классификация моделей данных
Модели данных
Инфологические Даталогические Физические
Модель
«сущность-
связь» (ER)
Документальные Фактографические Основаны на
файловых
структурах
Основаны на
странично-
сегментной
организации
Дескрипторные
Тезаурусные
Иерархические
Сетевые
Реляционные
Объектно-
ориентированные
(©) Владислав Лавров, vlavrov.com
- 4. 4
Уровни моделей данных
(последовательность разработки БД)
Предметная область
(часть реального мира, отражаемая в БД)
Пользователи АБД
ИНФОЛОГИЧЕСКАЯ МОДЕЛЬ
Обобщенное, не привязанное к
какой-либо СУБД, описание
предметной области (набор
данных, типов, связей и др.)
ДАТАЛОГИЧЕСКАЯ МОДЕЛЬ
Описание на языке конкретной
СУБД
ФИЗИЧЕСКАЯ МОДЕЛЬ
Описание хранимых данных
База данных
Модели,
используемые
СУБД
(©) Владислав Лавров, vlavrov.com
- 5. 5
2.2. Взаимосвязи в моделях данных
Связь
- это ассоциирование двух или более объектов
Основное назначение связей
- это возможность организации поиска данных
в базе данных
Типы связей
• один к одному;
• один ко многим;
• многие ко многим.
(©) Владислав Лавров, vlavrov.com
- 9. 9
Сегмент (запись) данных
- более высокий уровень абстракции, объединение полей данных.
2.3. Иерархическая модель данных
Поле данных
- минимальная информационная единица, доступная пользователю
с использованием СУБД
Тип сегмента
- поименованная совокупность типов полей (элементов) данных,
которые в него входят
Экземпляр сегмента
- состоит из конкретных значений полей, которые его образуют
(!) Особенность модели - сегменты объединяются в ориентированный
древовидный граф
Пример: СУБД Information Management System (IMS) фирмы IBM (1968 г.)
(©) Владислав Лавров, vlavrov.com
- 10. 10
Пример иерархии между сегментами
Сегмент
типа B
Сегмент
типа C
Сегмент
типа D
Сегмент
типа E
Сегмент
типа А
Уровень 1
Уровень 2
Уровень 3
Логически исходный
(корневой) сегмент
Логически
подчиненные
сегменты
(©) Владислав Лавров, vlavrov.com
- 11. 11
Ограничения иерархической структуры данных
• В каждой физической БД существует один корневой сегмент, т.е.
сегмент, у которого нет логически исходного (родительского) типа
сегмента. Уровень, на котором находится данный сегмент,
определяется расстоянием от корневого сегмента;
• Каждый логически исходный сегмент может быть связан с
произвольным числом логически подчиненных сегментов;
• Каждый логически подчиненный сегмент может быть связан только
с одним логически исходным (родительским) сегментом.
Основное правило – никакой потомок не может существовать без
своего родителя.
(©) Владислав Лавров, vlavrov.com
- 12. 12
Пример структуры иерархического дерева
Компьютерная фирма
Адрес Руководитель
Филиал фирмы
Адрес Руководитель
Типовые модели
Имя Стоимость Количество на складе
Индивидуальные модели
Номер заказа Стоимость Количество
Название сегмента
Названия полей
(©) Владислав Лавров, vlavrov.com
- 13. 13
Пример иерархии экземпляров дерева
КЛОСС
Адрес Руководитель
Филиал 1
Ленина, 2 Иванов И.И.
Модель 21
Brand 1540 2
Brand 1
Заказ 21
8 2
Филиал 2
Малышева, 4 Петров П.П.
900
2 700 4
Заказ 22
2800
Модель 22
Заказ 11
18 4500
12 1500 4
Заказ 12
Модель 11
Brand 2500 4
Brand 13500
Модель 12
Экземпляр сегмента
Экземпляр поля
(©) Владислав Лавров, vlavrov.com
- 14. 14
Преимущества иерархической структуры данных
• Простота понимания и использования, быстрота
доступа к данным.
• Простота оценки операционных характеристик
благодаря заранее заданным взаимосвязям и
тому, что операции манипулирования данными
являются навигационными, т.е. разработчик
приложения явным образом описывает всю
процедуру обработки.
(©) Владислав Лавров, vlavrov.com
- 15. 15
Недостатки иерархической структуры данных
• Трудность реализации взаимосвязей «многие-ко-многим». При этом
искусственно созданная структура иерархической модели становится
громоздкой, может потребоваться хранение избыточных данных на
физическом уровне.
• Из-за строгой иерархической упорядоченности объектов модели
значительно усложняются операции включения и удаления. Удаление
исходных объектов влечёт удаление порождённых, поэтому выполнение
команды «удалить» требует особой осторожности.
• Язык манипулирования данными в иерархической модели поддерживает
в явном виде навигационные операции. Эти операции связаны с
перемещением указателя, который определяет текущий экземпляр
конкретного сегмента.
(©) Владислав Лавров, vlavrov.com
- 16. 16
2.4. Сетевая модель данных
Элемент данных
- минимальная информационная единица, доступная пользователю
с использованием СУБД
Агрегат данных
- более высокий уровень обобщения в модели. Агрегат имеет
имя, по которому в системе допустимо обращение к нему.
КвартираДомУлицаГородИндекс
Адрес
КвартираДомУлицаГородИндекс
Адрес
Разработана рабочей группой по базам данных (Data Base Task
Group, DBTG) Ассоциации КОДАСИЛ (Conference on Data Systems
Languages, CODASYL)
Пример: СУБД Integrated Database Management System (IDMS)
компании Cullinet Software, Inc. (1972 г.)
(©) Владислав Лавров, vlavrov.com
- 17. 17
Сетевая модель данных
Запись типа А Владелец набора N
Запись типа B
Тип набора N
Член набора N
Запись
- совокупность агрегатов или элементов данных,
моделирующая некоторый класс объектов реального
мира. Различают тип записи и экземпляр записи
Набор
- двухуровневый граф, связывающий отношением
«один ко многим» два типа записи .
(!) Особенности модели - наборы объединяются в сетевой граф, потомок
может иметь любое число предков !!!
(©) Владислав Лавров, vlavrov.com
- 18. 18
Пример типа набора
Преподаватель Запись-владелец
Занятие
Преподаватель провел занятие
Запись-член
Пример экземпляра набора
Иванов Экземпляр записи-владельца
1 пара
Доцент
12.10.2007 …СУБД… Группа Мт
1 пара13.10.2007 …СУБД… Группа Мт
2 пара13.10.2007 …СУБД… Группа Мт
Экземпляры
записи-члена
(©) Владислав Лавров, vlavrov.com
- 19. 19
Пример связи типов объектов «многие-ко-многим»
Группа Мт-1
(член набора)
Группа Мт-2
(член набора)
Группа Мт-3
(член набора)
Иванов
Сидоров
Юзеров
Группа Мт-1
(член набора)
(экз.набора)
Ведет занятия в
Петров
(член набора)
(член набора)
(член набора)
(член набора)
Занимается у
(экз.набора)
Иванов
(владелец набора)
Преподаватель
Группа
Занимается у Ведет занятия в
Пример взаимосвязей экземпляров объектов «многие-ко-многим»
(©) Владислав Лавров, vlavrov.com
- 20. 20
Преимущества сетевой структуры данных
• Простота реализации взаимосвязей «многие ко
многим», часто встречающихся в реальном мире
• Наличие успешных реализации СУБД,
поддерживающих сетевую модель
(©) Владислав Лавров, vlavrov.com
- 21. 21
Недостаток сетевой структуры данных
• Сложность разработки.
В частности, прикладной программист должен
детально знать логическую структуру базы данных,
поскольку ему необходимо осуществляя навигацию
среди различных экземпляров наборов и
экземпляров записей. Другими словами,
программист должен представлять «свое» текущее
положение в экземплярах наборов при
«продвижении» по базе данных.
(©) Владислав Лавров, vlavrov.com
- 22. 22
Преимущества дореляционных моделей данных
• Развитие средства управления данными во внешней
памяти на низком уровне
• Возможность построения вручную эффективных
прикладных систем;
Недостатки дореляционных моделей данных
• Слишком сложно пользоваться
• Фактически необходимы знания о физической
организации
• Прикладные системы зависят от этой организации
(логическая и физическая зависимости данных);
• Логика построения приложений перегружена деталями
организации доступа к БД
(©) Владислав Лавров, vlavrov.com