SlideShare a Scribd company logo
1 of 22
1
Управление данными.
Часть 2.
Основные модели данных
(©) Владислав Лавров, vlavrov.com
2
2.1. Классификация моделей данных
Модель данных
- это некоторая абстракция, которая, будучи
применима к конкретным данным, позволяет
пользователям и разработчикам трактовать их
уже как информацию, то есть сведения,
содержащие не только данные, но и
взаимосвязь между ними.
(©) Владислав Лавров, vlavrov.com
3
Классификация моделей данных
Модели данных
Инфологические Даталогические Физические
Модель
«сущность-
связь» (ER)
Документальные Фактографические Основаны на
файловых
структурах
Основаны на
странично-
сегментной
организации
Дескрипторные
Тезаурусные
Иерархические
Сетевые
Реляционные
Объектно-
ориентированные
(©) Владислав Лавров, vlavrov.com
4
Уровни моделей данных
(последовательность разработки БД)
Предметная область
(часть реального мира, отражаемая в БД)
Пользователи АБД
ИНФОЛОГИЧЕСКАЯ МОДЕЛЬ
Обобщенное, не привязанное к
какой-либо СУБД, описание
предметной области (набор
данных, типов, связей и др.)
ДАТАЛОГИЧЕСКАЯ МОДЕЛЬ
Описание на языке конкретной
СУБД
ФИЗИЧЕСКАЯ МОДЕЛЬ
Описание хранимых данных
База данных
Модели,
используемые
СУБД
(©) Владислав Лавров, vlavrov.com
5
2.2. Взаимосвязи в моделях данных
Связь
- это ассоциирование двух или более объектов
Основное назначение связей
- это возможность организации поиска данных
в базе данных
Типы связей
• один к одному;
• один ко многим;
• многие ко многим.
(©) Владислав Лавров, vlavrov.com
6
Связь «один-к-одному»
А
Работник
B
Табельный номер
1 1
1 1
(©) Владислав Лавров, vlavrov.com
7
Связь «один-ко-многим»
А
Цех
B
Технологический
агрегат
1 ∞
1 ∞
(©) Владислав Лавров, vlavrov.com
8
Связь «многие-ко-многим»
А
Изделие
B
Технологическая
операция
∞
∞
∞
∞
(©) Владислав Лавров, vlavrov.com
9
Сегмент (запись) данных
- более высокий уровень абстракции, объединение полей данных.
2.3. Иерархическая модель данных
Поле данных
- минимальная информационная единица, доступная пользователю
с использованием СУБД
Тип сегмента
- поименованная совокупность типов полей (элементов) данных,
которые в него входят
Экземпляр сегмента
- состоит из конкретных значений полей, которые его образуют
(!) Особенность модели - сегменты объединяются в ориентированный
древовидный граф
Пример: СУБД Information Management System (IMS) фирмы IBM (1968 г.)
(©) Владислав Лавров, vlavrov.com
10
Пример иерархии между сегментами
Сегмент
типа B
Сегмент
типа C
Сегмент
типа D
Сегмент
типа E
Сегмент
типа А
Уровень 1
Уровень 2
Уровень 3
Логически исходный
(корневой) сегмент
Логически
подчиненные
сегменты
(©) Владислав Лавров, vlavrov.com
11
Ограничения иерархической структуры данных
• В каждой физической БД существует один корневой сегмент, т.е.
сегмент, у которого нет логически исходного (родительского) типа
сегмента. Уровень, на котором находится данный сегмент,
определяется расстоянием от корневого сегмента;
• Каждый логически исходный сегмент может быть связан с
произвольным числом логически подчиненных сегментов;
• Каждый логически подчиненный сегмент может быть связан только
с одним логически исходным (родительским) сегментом.
Основное правило – никакой потомок не может существовать без
своего родителя.
(©) Владислав Лавров, vlavrov.com
12
Пример структуры иерархического дерева
Компьютерная фирма
Адрес Руководитель
Филиал фирмы
Адрес Руководитель
Типовые модели
Имя Стоимость Количество на складе
Индивидуальные модели
Номер заказа Стоимость Количество
Название сегмента
Названия полей
(©) Владислав Лавров, vlavrov.com
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
Преимущества иерархической структуры данных
• Простота понимания и использования, быстрота
доступа к данным.
• Простота оценки операционных характеристик
благодаря заранее заданным взаимосвязям и
тому, что операции манипулирования данными
являются навигационными, т.е. разработчик
приложения явным образом описывает всю
процедуру обработки.
(©) Владислав Лавров, vlavrov.com
15
Недостатки иерархической структуры данных
• Трудность реализации взаимосвязей «многие-ко-многим». При этом
искусственно созданная структура иерархической модели становится
громоздкой, может потребоваться хранение избыточных данных на
физическом уровне.
• Из-за строгой иерархической упорядоченности объектов модели
значительно усложняются операции включения и удаления. Удаление
исходных объектов влечёт удаление порождённых, поэтому выполнение
команды «удалить» требует особой осторожности.
• Язык манипулирования данными в иерархической модели поддерживает
в явном виде навигационные операции. Эти операции связаны с
перемещением указателя, который определяет текущий экземпляр
конкретного сегмента.
(©) Владислав Лавров, vlavrov.com
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
Сетевая модель данных
Запись типа А Владелец набора N
Запись типа B
Тип набора N
Член набора N
Запись
- совокупность агрегатов или элементов данных,
моделирующая некоторый класс объектов реального
мира. Различают тип записи и экземпляр записи
Набор
- двухуровневый граф, связывающий отношением
«один ко многим» два типа записи .
(!) Особенности модели - наборы объединяются в сетевой граф, потомок
может иметь любое число предков !!!
(©) Владислав Лавров, vlavrov.com
18
Пример типа набора
Преподаватель Запись-владелец
Занятие
Преподаватель провел занятие
Запись-член
Пример экземпляра набора
Иванов Экземпляр записи-владельца
1 пара
Доцент
12.10.2007 …СУБД… Группа Мт
1 пара13.10.2007 …СУБД… Группа Мт
2 пара13.10.2007 …СУБД… Группа Мт
Экземпляры
записи-члена
(©) Владислав Лавров, vlavrov.com
19
Пример связи типов объектов «многие-ко-многим»
Группа Мт-1
(член набора)
Группа Мт-2
(член набора)
Группа Мт-3
(член набора)
Иванов
Сидоров
Юзеров
Группа Мт-1
(член набора)
(экз.набора)
Ведет занятия в
Петров
(член набора)
(член набора)
(член набора)
(член набора)
Занимается у
(экз.набора)
Иванов
(владелец набора)
Преподаватель
Группа
Занимается у Ведет занятия в
Пример взаимосвязей экземпляров объектов «многие-ко-многим»
(©) Владислав Лавров, vlavrov.com
20
Преимущества сетевой структуры данных
• Простота реализации взаимосвязей «многие ко
многим», часто встречающихся в реальном мире
• Наличие успешных реализации СУБД,
поддерживающих сетевую модель
(©) Владислав Лавров, vlavrov.com
21
Недостаток сетевой структуры данных
• Сложность разработки.
В частности, прикладной программист должен
детально знать логическую структуру базы данных,
поскольку ему необходимо осуществляя навигацию
среди различных экземпляров наборов и
экземпляров записей. Другими словами,
программист должен представлять «свое» текущее
положение в экземплярах наборов при
«продвижении» по базе данных.
(©) Владислав Лавров, vlavrov.com
22
Преимущества дореляционных моделей данных
• Развитие средства управления данными во внешней
памяти на низком уровне
• Возможность построения вручную эффективных
прикладных систем;
Недостатки дореляционных моделей данных
• Слишком сложно пользоваться
• Фактически необходимы знания о физической
организации
• Прикладные системы зависят от этой организации
(логическая и физическая зависимости данных);
• Логика построения приложений перегружена деталями
организации доступа к БД
(©) Владислав Лавров, vlavrov.com

More Related Content

What's hot

О.В. Сухорослов "Распределенные хранилища данных"
О.В. Сухорослов "Распределенные хранилища данных"О.В. Сухорослов "Распределенные хранилища данных"
О.В. Сухорослов "Распределенные хранилища данных"Yandex
 
Konspekt
KonspektKonspekt
KonspektArtem
 
Все самые важные команды SQL за 60 минут
Все самые важные команды SQL за 60 минутВсе самые важные команды SQL за 60 минут
Все самые важные команды SQL за 60 минутSkillFactory
 
DBD lection 4. Big Data, NoSQL. In Russian.
DBD lection 4. Big Data, NoSQL. In Russian.DBD lection 4. Big Data, NoSQL. In Russian.
DBD lection 4. Big Data, NoSQL. In Russian.mikhaelsmirnov
 
Обзор инструментов Toad для администраторов Oracle
Обзор инструментов Toad для администраторов OracleОбзор инструментов Toad для администраторов Oracle
Обзор инструментов Toad для администраторов OracleBAKOTECH
 
DBD lection 1. Intro in Database Design. In Russian.
DBD lection 1. Intro in Database Design. In Russian.DBD lection 1. Intro in Database Design. In Russian.
DBD lection 1. Intro in Database Design. In Russian.mikhaelsmirnov
 
Основы OLAP. Вебинар Workaround в Softengi
Основы OLAP. Вебинар Workaround в SoftengiОсновы OLAP. Вебинар Workaround в Softengi
Основы OLAP. Вебинар Workaround в SoftengiSoftengi
 
Olap и oltp технологии
Olap и oltp технологииOlap и oltp технологии
Olap и oltp технологииIlya Ternovoy
 
Data Destribution service OMG standart
Data Destribution service OMG standart Data Destribution service OMG standart
Data Destribution service OMG standart Sergei Seleznev
 
Быстрое развёртывание шаблонов и статики в Mail.ru, Николай Кондратов
Быстрое развёртывание шаблонов и статики в Mail.ru, Николай КондратовБыстрое развёртывание шаблонов и статики в Mail.ru, Николай Кондратов
Быстрое развёртывание шаблонов и статики в Mail.ru, Николай КондратовFuenteovejuna
 
Стажировка-2013, разработчики, занятие 11. Базы данных
Стажировка-2013, разработчики, занятие 11. Базы данныхСтажировка-2013, разработчики, занятие 11. Базы данных
Стажировка-2013, разработчики, занятие 11. Базы данных7bits
 
базы данных в Delphi
базы данных в Delphiбазы данных в Delphi
базы данных в DelphiAeka227
 

What's hot (20)

Информатика (рекомендуемые информационные ресурсы)
Информатика (рекомендуемые информационные ресурсы)Информатика (рекомендуемые информационные ресурсы)
Информатика (рекомендуемые информационные ресурсы)
 
Информатика (эффективный поиск в Интернет)
Информатика (эффективный поиск в Интернет)Информатика (эффективный поиск в Интернет)
Информатика (эффективный поиск в Интернет)
 
Информатика (прикладное ПО)
Информатика (прикладное ПО)Информатика (прикладное ПО)
Информатика (прикладное ПО)
 
Информатика (СУБД)
Информатика (СУБД)Информатика (СУБД)
Информатика (СУБД)
 
О.В. Сухорослов "Распределенные хранилища данных"
О.В. Сухорослов "Распределенные хранилища данных"О.В. Сухорослов "Распределенные хранилища данных"
О.В. Сухорослов "Распределенные хранилища данных"
 
Konspekt
KonspektKonspekt
Konspekt
 
Oracle
OracleOracle
Oracle
 
Все самые важные команды SQL за 60 минут
Все самые важные команды SQL за 60 минутВсе самые важные команды SQL за 60 минут
Все самые важные команды SQL за 60 минут
 
DBD lection 4. Big Data, NoSQL. In Russian.
DBD lection 4. Big Data, NoSQL. In Russian.DBD lection 4. Big Data, NoSQL. In Russian.
DBD lection 4. Big Data, NoSQL. In Russian.
 
Обзор инструментов Toad для администраторов Oracle
Обзор инструментов Toad для администраторов OracleОбзор инструментов Toad для администраторов Oracle
Обзор инструментов Toad для администраторов Oracle
 
DBD lection 1. Intro in Database Design. In Russian.
DBD lection 1. Intro in Database Design. In Russian.DBD lection 1. Intro in Database Design. In Russian.
DBD lection 1. Intro in Database Design. In Russian.
 
Информатика (архитектура)
Информатика (архитектура)Информатика (архитектура)
Информатика (архитектура)
 
Основы OLAP. Вебинар Workaround в Softengi
Основы OLAP. Вебинар Workaround в SoftengiОсновы OLAP. Вебинар Workaround в Softengi
Основы OLAP. Вебинар Workaround в Softengi
 
Olap и oltp технологии
Olap и oltp технологииOlap и oltp технологии
Olap и oltp технологии
 
Информатика (архитектура ПО)
Информатика (архитектура ПО)Информатика (архитектура ПО)
Информатика (архитектура ПО)
 
Data Destribution service OMG standart
Data Destribution service OMG standart Data Destribution service OMG standart
Data Destribution service OMG standart
 
Информатика (устройство ПК)
Информатика (устройство ПК)Информатика (устройство ПК)
Информатика (устройство ПК)
 
Быстрое развёртывание шаблонов и статики в Mail.ru, Николай Кондратов
Быстрое развёртывание шаблонов и статики в Mail.ru, Николай КондратовБыстрое развёртывание шаблонов и статики в Mail.ru, Николай Кондратов
Быстрое развёртывание шаблонов и статики в Mail.ru, Николай Кондратов
 
Стажировка-2013, разработчики, занятие 11. Базы данных
Стажировка-2013, разработчики, занятие 11. Базы данныхСтажировка-2013, разработчики, занятие 11. Базы данных
Стажировка-2013, разработчики, занятие 11. Базы данных
 
базы данных в Delphi
базы данных в Delphiбазы данных в Delphi
базы данных в Delphi
 

Viewers also liked

Качество открытых государственных геоданных
Качество открытых государственных геоданныхКачество открытых государственных геоданных
Качество открытых государственных геоданныхMaxim Dubinin
 

Viewers also liked (18)

МиСПИСиТ (источники ошибок)
МиСПИСиТ (источники ошибок)МиСПИСиТ (источники ошибок)
МиСПИСиТ (источники ошибок)
 
МиСПИСиТ (архитектура)
МиСПИСиТ (архитектура)МиСПИСиТ (архитектура)
МиСПИСиТ (архитектура)
 
МиСПИСиТ (структура)
МиСПИСиТ (структура)МиСПИСиТ (структура)
МиСПИСиТ (структура)
 
МиСПИСиТ (введение)
МиСПИСиТ (введение)МиСПИСиТ (введение)
МиСПИСиТ (введение)
 
МиСПИСиТ (тестирование и отладка)
МиСПИСиТ (тестирование и отладка)МиСПИСиТ (тестирование и отладка)
МиСПИСиТ (тестирование и отладка)
 
МиСПИСиТ (IDEF)
МиСПИСиТ (IDEF)МиСПИСиТ (IDEF)
МиСПИСиТ (IDEF)
 
МиСПИСиТ (общие принципы разработки)
МиСПИСиТ (общие принципы разработки)МиСПИСиТ (общие принципы разработки)
МиСПИСиТ (общие принципы разработки)
 
МиСПИСиТ (разработка программного модуля)
МиСПИСиТ (разработка программного модуля)МиСПИСиТ (разработка программного модуля)
МиСПИСиТ (разработка программного модуля)
 
Образовательная программа ИСТ на кафедре ТИМ УрФУ
Образовательная программа ИСТ на кафедре ТИМ УрФУОбразовательная программа ИСТ на кафедре ТИМ УрФУ
Образовательная программа ИСТ на кафедре ТИМ УрФУ
 
1. Кафедра ТИМ УрФУ
1. Кафедра ТИМ УрФУ1. Кафедра ТИМ УрФУ
1. Кафедра ТИМ УрФУ
 
МиСПИСиТ (литература по курсу)
МиСПИСиТ (литература по курсу)МиСПИСиТ (литература по курсу)
МиСПИСиТ (литература по курсу)
 
МиСПИСиТ (жизненный цикл)
МиСПИСиТ (жизненный цикл)МиСПИСиТ (жизненный цикл)
МиСПИСиТ (жизненный цикл)
 
МиСПИСиТ (внешнее описание)
МиСПИСиТ (внешнее описание)МиСПИСиТ (внешнее описание)
МиСПИСиТ (внешнее описание)
 
3. Общая характеристика АСУ
3. Общая характеристика АСУ3. Общая характеристика АСУ
3. Общая характеристика АСУ
 
Управление данными (транзакции)
Управление данными (транзакции)Управление данными (транзакции)
Управление данными (транзакции)
 
Качество открытых государственных геоданных
Качество открытых государственных геоданныхКачество открытых государственных геоданных
Качество открытых государственных геоданных
 
информатика (информация и информатика)
информатика (информация и информатика)информатика (информация и информатика)
информатика (информация и информатика)
 
Проектирование БД (литература)
Проектирование БД (литература)Проектирование БД (литература)
Проектирование БД (литература)
 

Similar to Управление данными (модели данных)

Управление Данными. Лекция 1
Управление Данными. Лекция 1Управление Данными. Лекция 1
Управление Данными. Лекция 1Dmitriy Krukov
 
001
001001
001JIuc
 
презентация семинар по бд
презентация семинар по бдпрезентация семинар по бд
презентация семинар по бдanna_pal
 
Базы данных лекция №4
Базы данных лекция №4Базы данных лекция №4
Базы данных лекция №4Vitaliy Pak
 
Sql Server Data Services
Sql Server Data ServicesSql Server Data Services
Sql Server Data ServicesMedia Gorod
 
Базы данных лекция №11
Базы данных лекция №11Базы данных лекция №11
Базы данных лекция №11Vitaliy Pak
 
А.Левенчук -- системноинженерное мышление
А.Левенчук -- системноинженерное мышлениеА.Левенчук -- системноинженерное мышление
А.Левенчук -- системноинженерное мышлениеAnatoly Levenchuk
 
20160323 Пример бизнес-приложения контроля качества в розничной торговле
20160323 Пример бизнес-приложения контроля качества в розничной торговле20160323 Пример бизнес-приложения контроля качества в розничной торговле
20160323 Пример бизнес-приложения контроля качества в розничной торговлеAndrew Sovtsov
 
Моделирование для NoSQL БД
Моделирование для NoSQL БДМоделирование для NoSQL БД
Моделирование для NoSQL БДAndrew Sovtsov
 
Индексы в MSSQL: принципы работы и способы оптимизации
Индексы в MSSQL: принципы работы и способы оптимизацииИндексы в MSSQL: принципы работы и способы оптимизации
Индексы в MSSQL: принципы работы и способы оптимизацииAlexander Byndyu
 

Similar to Управление данными (модели данных) (20)

Управление Данными. Лекция 1
Управление Данными. Лекция 1Управление Данными. Лекция 1
Управление Данными. Лекция 1
 
001
001001
001
 
презентация семинар по бд
презентация семинар по бдпрезентация семинар по бд
презентация семинар по бд
 
Составные части объектного подхода
Составные части объектного подходаСоставные части объектного подхода
Составные части объектного подхода
 
Базы данных лекция №4
Базы данных лекция №4Базы данных лекция №4
Базы данных лекция №4
 
9946
99469946
9946
 
Sql Server Data Services
Sql Server Data ServicesSql Server Data Services
Sql Server Data Services
 
лекция 2
лекция 2лекция 2
лекция 2
 
лекция 10
лекция 10лекция 10
лекция 10
 
Ais Lecture 2
Ais Lecture 2Ais Lecture 2
Ais Lecture 2
 
тема 12
тема 12тема 12
тема 12
 
лекция 4
лекция 4лекция 4
лекция 4
 
Классы и объекты С#
Классы и объекты С#Классы и объекты С#
Классы и объекты С#
 
Базы данных лекция №11
Базы данных лекция №11Базы данных лекция №11
Базы данных лекция №11
 
Lekcia4
Lekcia4Lekcia4
Lekcia4
 
А.Левенчук -- системноинженерное мышление
А.Левенчук -- системноинженерное мышлениеА.Левенчук -- системноинженерное мышление
А.Левенчук -- системноинженерное мышление
 
20160323 Пример бизнес-приложения контроля качества в розничной торговле
20160323 Пример бизнес-приложения контроля качества в розничной торговле20160323 Пример бизнес-приложения контроля качества в розничной торговле
20160323 Пример бизнес-приложения контроля качества в розничной торговле
 
Моделирование для NoSQL БД
Моделирование для NoSQL БДМоделирование для NoSQL БД
Моделирование для NoSQL БД
 
10 субд
10 субд10 субд
10 субд
 
Индексы в MSSQL: принципы работы и способы оптимизации
Индексы в MSSQL: принципы работы и способы оптимизацииИндексы в MSSQL: принципы работы и способы оптимизации
Индексы в MSSQL: принципы работы и способы оптимизации
 

More from Ural Federal University named after First President of Russia B.N. Yeltsin

More from Ural Federal University named after First President of Russia B.N. Yeltsin (20)

2016 ВКР Черемискина Н.А.
2016 ВКР Черемискина Н.А.2016 ВКР Черемискина Н.А.
2016 ВКР Черемискина Н.А.
 
2016 ВКР Гребнева Н.В.
2016 ВКР Гребнева Н.В.2016 ВКР Гребнева Н.В.
2016 ВКР Гребнева Н.В.
 
2016 ВКР Имашева А.А.
2016 ВКР Имашева А.А.2016 ВКР Имашева А.А.
2016 ВКР Имашева А.А.
 
Введение в методы agile
Введение в методы agileВведение в методы agile
Введение в методы agile
 
ООП. Рекомендуемые информационные ресурсы
ООП. Рекомендуемые информационные ресурсыООП. Рекомендуемые информационные ресурсы
ООП. Рекомендуемые информационные ресурсы
 
Методоллогии Agile
Методоллогии AgileМетодоллогии Agile
Методоллогии Agile
 
3. Информация и ее роль
3. Информация и ее роль3. Информация и ее роль
3. Информация и ее роль
 
Наследование и полиморфизм
Наследование и полиморфизмНаследование и полиморфизм
Наследование и полиморфизм
 
Интерфейсы
ИнтерфейсыИнтерфейсы
Интерфейсы
 
магистратура 09.04.02 ист на кафедре тим урфу+
магистратура 09.04.02 ист на кафедре тим урфу+магистратура 09.04.02 ист на кафедре тим урфу+
магистратура 09.04.02 ист на кафедре тим урфу+
 
магистратура 22.04.02 металлургия на кафедре тим+
магистратура 22.04.02 металлургия на кафедре тим+магистратура 22.04.02 металлургия на кафедре тим+
магистратура 22.04.02 металлургия на кафедре тим+
 
1.5 тп (технологические подходы)+
1.5 тп (технологические подходы)+1.5 тп (технологические подходы)+
1.5 тп (технологические подходы)+
 
1.4 тп (общие принципы разработки)+
1.4 тп (общие принципы разработки)+1.4 тп (общие принципы разработки)+
1.4 тп (общие принципы разработки)+
 
1.3 тп (источники ошибок)+
1.3 тп (источники ошибок)+1.3 тп (источники ошибок)+
1.3 тп (источники ошибок)+
 
2014 Сабиров Е.Р. презентация КП по ПБД
2014 Сабиров Е.Р. презентация КП по ПБД2014 Сабиров Е.Р. презентация КП по ПБД
2014 Сабиров Е.Р. презентация КП по ПБД
 
2014 Мищенко К.В. презентация КП по ПБД
2014 Мищенко К.В. презентация КП по ПБД2014 Мищенко К.В. презентация КП по ПБД
2014 Мищенко К.В. презентация КП по ПБД
 
2014 Пильщиков С.Н. презентация КП по ПБД
2014 Пильщиков С.Н. презентация КП по ПБД2014 Пильщиков С.Н. презентация КП по ПБД
2014 Пильщиков С.Н. презентация КП по ПБД
 
2014 диплом Терехова А.Ю
2014 диплом Терехова А.Ю2014 диплом Терехова А.Ю
2014 диплом Терехова А.Ю
 
2014 диплом Мухаметшин Р.Р
2014 диплом Мухаметшин Р.Р2014 диплом Мухаметшин Р.Р
2014 диплом Мухаметшин Р.Р
 
Тест драйв на кафедре ТИМ 9 января 2014
Тест драйв на кафедре ТИМ 9 января 2014Тест драйв на кафедре ТИМ 9 января 2014
Тест драйв на кафедре ТИМ 9 января 2014
 

Управление данными (модели данных)

  • 1. 1 Управление данными. Часть 2. Основные модели данных (©) Владислав Лавров, vlavrov.com
  • 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