Similar presentations:
Концептуальные модели данных
1. Тема 2. Концептуальные модели данных
Организация баз данных в производственных системахТема 2.
Концептуальные модели данных
Шевченко А. В.
Тема 2. Концептуальные модели данных
1
2. Понятие концептуальной модели
Организация баз данных в производственных системахПонятие концептуальной модели
Концептуальные модели
Объектноориентированная
Иерархическая
Сетевая
Многомерная
Реляционная
Постреляционная
Задача концептуального проектирования построение единой концептуальной схемы
базы данных, имеющей минимальную
избыточность и хорошо отражающей
семантику связей между данными
Шевченко А. В.
Тема 2. Концептуальные модели данных
2
3. Иерархическая модель (1968 год)
Организация баз данных в производственных системахИерархическая модель (1968 год)
Клиент
Ответственный
Ответственный
Ответственный
Заказ
Заказ
Заказ
Заказ
Заказ
Позиция
заказа
В иерархической модели связи между
данными
описываются
в
виде
упорядоченного графа, в узлах которого
находятся записи, а дуги представляют
отношения предок-потомок.
Шевченко А. В.
Тема 2. Концептуальные модели данных
Заказ
Заказ
Отгрузка
СУБД: IMS, PC/Focus,
Team-Up, Data Edge
3
4. Сетевая модель (1969 год)
Методы проектирования и информатизации автоматизированных производственных и специальных системСетевая модель (1969 год)
Клиент
Ответственный
Продукция
Заказ
В схеме сетевой базы данных присутствуют
два типа элементов - запись и связь.
Шевченко А. В.
Тема 2. Концептуальные модели данных
Технология
СУБД: IDMS, dbVista
4
5. Реляционная модель (1970 год)
Организация баз данных в производственных системахРеляционная модель (1970 год)
Продукция
Клиент
Заказ
В реляционной модели данные и связи
между ними представляются в виде
двумерных таблиц - отношений.
Шевченко А. В.
Тема 2. Концептуальные модели данных
СУБД:
Oracle,
Ingres,
Informix, Sybase, dBase,
Foxbase, Paradox, Clarion,
Microsoft
SQL
Server,
Microsoft Access, MySQL
5
6. Постреляционная модель
Организация баз данных в производственных системахПостреляционная модель
Заказ
Детали заказа
Постреляционная модель снимает
ограничения атомарности, то есть
допускает вложенность таблиц.
Шевченко А. В.
Тема 2. Концептуальные модели данных
СУБД:
Dasdb
uniVers,
Bubba,
6
7. Объектно-ориентированная модель
Организация баз данных в производственных системахОбъектно-ориентированная модель
Заказ
Клиент
Данные
Данные
Методы
Методы
В
объектно-ориентированной
модели
при
представлении
данных
имеется
возможность
идентификации отдельных записей. Между записями
базы данных и функциями их обработки
устанавливаются
взаимосвязи
с
помощью
механизмов, подобным соответствующим средствам
объектно-ориентированного программирования.
Шевченко А. В.
Тема 2. Концептуальные модели данных
СУБД: POET, Jasmine,
Versant, O2, ONTOS, Iris,
Orion, Postgres
7
8. Многомерная модель
Организация баз данных в производственных системахМногомерная модель
Клиент
Заказ
Продукция
Регион
Период
Многомерные СУБД являются узкоспециализированными СУБД, предназначенными
для интерактивной аналитической обработки
информации. Для этих целей важными
понятиями являются агрегируемость, историчность и прогнозируемость данных.
Шевченко А. В.
Тема 2. Концептуальные модели данных
СУБД:
Essbase,
Media
Multi-matrix, Oracle Express
Server, Cache
8
9. Понятия реляционной модели данных
Организация баз данных в производственных системахПонятия реляционной модели данных
Домен – дискретное множество значений. Множество значений домена всегда конечно.
D1(тип) { винт, гайка, шайба },
D2(покрытие) { нет, цинк, хром },
D3(резьба) { М5, М6, М8, М10 }.
Декартово произведение множеств – множество, элементами которого являются все
возможные комбинации элементов перемножаемых множеств. Декартово произведение
представляется формулой D1 D2 … Dn , где n – число доменов.
Отношение – некоторое подмножество декартова произведения всех доменов.
Кортежи – элементы отношений.
Кардинальное число отношения – число кортежей в отношении.
Атрибуты – компоненты кортежей, соответствующие определенным доменам.
Степень отношения – число атрибутов отношения.
Шевченко А. В.
Тема 2. Концептуальные модели данных
9
10. Нормализация отношений
Организация баз данных в производственных системахНормализация отношений
Заказ
Номер
Дата
Клиент
Адрес
Изделие
Количество
1
15.03
А
СПб., ул. Герцена 12
Стойка 600 1200
Подставка
200
120
2
15.03
В
Москва, ул. Мира 8
Короб световой
45
50
75
25
3
20.03
С
СПб., ул. Медиков 7
Стойка 600 1200
Стойка 400 800
Короб световой
4
24.03
А
СПб., ул. Герцена 12
Короб световой
80
2
15.03
В
Москва, ул. Мира 8
Короб световой
45
Шевченко А. В.
Тема 2. Концептуальные модели данных
10
11. 1-я нормальная форма
Организация баз данных в производственных системах1-я нормальная форма
Заказ
Номер
Дата
Клиент
Адрес
Изделие
Количество
1
15.03
А
СПб., ул. Герцена 12
Стойка 600 1200
200
1
15.03
А
СПб., ул. Герцена 12
Подставка
120
2
15.03
В
Москва, ул. Мира 8
Короб световой
45
3
20.03
С
СПб., ул. Медиков 7
Стойка 600 1200
50
3
20.03
С
СПб., ул. Медиков 7
Стойка 400 800
75
3
20.03
С
СПб., ул. Медиков 7
Короб световой
25
4
24.03
А
СПб., ул. Герцена 12
Короб световой
80
Проблемы:
Избыточность
Аномалии включения
Аномалии удаления
Шевченко А. В.
Тема 2. Концептуальные модели данных
11
12. Понятие функциональной зависимости
Организация баз данных в производственных системахПонятие функциональной зависимости
Заказ
Номер
Дата
Клиент
Адрес
Изделие
Количество
1
15.03
А
СПб., ул. Герцена 12
Стойка 600 1200
200
1
15.03
А
СПб., ул. Герцена 12
Подставка
120
2
15.03
В
Москва, ул. Мира 8
Короб световой
45
3
20.03
С
СПб., ул. Медиков 7
Стойка 600 1200
50
3
20.03
С
СПб., ул. Медиков 7
Стойка 400 800
75
3
20.03
С
СПб., ул. Медиков 7
Короб световой
25
4
24.03
А
СПб., ул. Герцена 12
Короб световой
80
Шевченко А. В.
Номер
Дата
Номер
Клиент
Номер
Адрес
Клиент
Адрес
Номер,
изделие
Количество
Тема 2. Концептуальные модели данных
12
13. 2-я нормальная форма
Организация баз данных в производственных системах2-я нормальная форма
Заказ
Позиция заказа
Номер
Дата
Клиент
Адрес
Номер
Изделие
Количество
1
15.03
А
СПб., ул. Герцена 12
1
Стойка 600 1200
200
2
15.03
В
Москва, ул. Мира 8
2
Подставка
120
3
20.03
С
СПб., ул. Медиков 7
2
Короб световой
45
4
24.03
А
СПб., ул. Герцена 12
3
Стойка 600 1200
50
3
Стойка 400 800
75
3
Короб световой
25
4
Короб световой
80
Проблемы:
Избыточность
Аномалии включения
Аномалии удаления
Шевченко А. В.
Тема 2. Концептуальные модели данных
13
14. 3-я нормальная форма
Организация баз данных в производственных системах3-я нормальная форма
Заказ
Позиция заказа
Номер
Дата
Клиент
Номер
Изделие
Количество
1
15.03
А
1
Стойка 600 1200
200
2
15.03
В
2
Подставка
120
3
20.03
С
2
Короб световой
45
4
24.03
А
3
Стойка 600 1200
50
3
Стойка 400 800
75
3
Короб световой
25
4
Короб световой
80
Клиент
Клиент
Адрес
А
СПб., ул. Герцена 12
В
Москва, ул. Мира 8
С
СПб., ул. Медиков 7
Шевченко А. В.
Тема 2. Концептуальные модели данных
14
15. Представление связей в реляционной модели
Организация баз данных в производственных системахПредставление связей в реляционной модели
М
Номер
Заказ
Дата
1
1
Позиция
заказа
Клиент
Клиент
М
Адрес
Заказ
Номер
Дата
Изделие
Количество
Клиент
Клиент
Клиент
Адрес
Включение атрибута связи
в подчиненное отношение
Распространение ключа
по структуре отношений
Позиция заказа
Номер
Шевченко А. В.
Изделие
Тема 2. Концептуальные модели данных
Количество
15
16. Реляционная алгебра
Организация баз данных в производственных системахРеляционная алгебра
Объединение
Деление
Вычитание
Соединение
Результатом любой алгебраической
операции над отношениями является
отношение.
Пересечение
Селекция
Произведение
Шевченко А. В.
Тема 2. Концептуальные модели данных
Проекция
16
17. Объединение отношений
Организация баз данных в производственных системахОбъединение отношений
R1
Номер
Сотрудник
Дата рождения
Должность
Оклад
212
Сергеев Иван Федорович
15.06.1956
Инженер
18000
315
Кондратьев Петр Михайлович
12.10.1974
Наладчик
9600
R2
Номер
Сотрудник
Дата рождения
Должность
Оклад
315
Кондратьев Петр Михайлович
12.10.1974
Наладчик
9600
423
Игнатьев Семен Васильевич
23.05.1980
Сварщик
8200
R = (R1 UNION R2)
Номер
Сотрудник
Дата рождения
Должность
Оклад
212
Сергеев Иван Федорович
15.06.1956
Инженер
18000
315
Кондратьев Петр Михайлович
12.10.1974
Наладчик
9600
423
Игнатьев Семен Васильевич
23.05.1980
Сварщик
8200
Шевченко А. В.
Тема 2. Концептуальные модели данных
17
18. Вычитание отношений
Организация баз данных в производственных системахВычитание отношений
R1
Номер
Сотрудник
Дата рождения
Должность
Оклад
212
Сергеев Иван Федорович
15.06.1956
Инженер
18000
315
Кондратьев Петр Михайлович
12.10.1974
Наладчик
9600
R2
Номер
Сотрудник
Дата рождения
Должность
Оклад
315
Кондратьев Петр Михайлович
12.10.1974
Наладчик
9600
423
Игнатьев Семен Васильевич
23.05.1980
Сварщик
8200
R = (R1 MINUS R2)
Номер
212
Сотрудник
Сергеев Иван Федорович
Дата рождения
15.06.1956
Должность
Инженер
Оклад
18000
R = (R2 MINUS R1)
Номер
423
Шевченко А. В.
Сотрудник
Игнатьев Семен Васильевич
Дата рождения
23.05.1980
Тема 2. Концептуальные модели данных
Должность
Сварщик
Оклад
8200
18
19. Пересечение отношений
Организация баз данных в производственных системахПересечение отношений
R1
Номер
Сотрудник
Дата рождения
Должность
Оклад
212
Сергеев Иван Федорович
15.06.1956
Инженер
18000
315
Кондратьев Петр Михайлович
12.10.1974
Наладчик
9600
R2
Номер
Сотрудник
Дата рождения
Должность
Оклад
315
Кондратьев Петр Михайлович
12.10.1974
Наладчик
9600
423
Игнатьев Семен Васильевич
23.05.1980
Сварщик
8200
R = (R1 INTERSECT R2)
Номер
315
Шевченко А. В.
Сотрудник
Кондратьев Петр Михайлович
Дата рождения
12.10.1974
Тема 2. Концептуальные модели данных
Должность
Наладчик
Оклад
9600
19
20. Произведение отношений
Организация баз данных в производственных системахПроизведение отношений
R1
Поставщик
R2
Город
Наименование
Стандарт
ООО "Метизы"
Санкт-Петербург
Болт ш/г М 12 х 40
ГОСТ 7798-70
АО "Промкомплект"
Москва
Гайка ш/г М12
ГОСТ 5915-70
R = (R1 TIMES R2)
Поставщик
Город
Наименование
Стандарт
ООО "Метизы"
Санкт-Петербург
Болт ш/г М 12 х 40
ГОСТ 7798-70
ООО "Метизы"
Санкт-Петербург
Гайка ш/г М12
ГОСТ 5915-70
АО "Промкомплект"
Москва
Болт ш/г М 12 х 40
ГОСТ 7798-70
АО "Промкомплект"
Москва
Гайка ш/г М12
ГОСТ 5915-70
Шевченко А. В.
Тема 2. Концептуальные модели данных
20
21. Селекция отношений
Организация баз данных в производственных системахСелекция отношений
R1
Номер
Сотрудник
Дата рождения
Должность
Оклад
212
Сергеев Иван Федорович
15.06.1956
Инженер
18000
315
Кондратьев Петр Михайлович
12.10.1974
Наладчик
9600
423
Игнатьев Семен Васильевич
23.05.1980
Сварщик
8200
R = (R1 WHERE Должность != Инженер AND Оклад >= 9000)
Номер
315
Шевченко А. В.
Сотрудник
Кондратьев Петр Михайлович
Дата рождения
12.10.1974
Тема 2. Концептуальные модели данных
Должность
Наладчик
Оклад
9600
21
22. Проекция отношений
Организация баз данных в производственных системахПроекция отношений
R1
Поставщик
Город
Наименование
Стандарт
ООО "Метизы"
Санкт-Петербург
Болт ш/г М 12 х 40
ГОСТ 7798-70
ООО "Метизы"
Санкт-Петербург
Гайка ш/г М12
ГОСТ 5915-70
АО "Промкомплект"
Москва
Болт ш/г М 12 х 40
ГОСТ 7798-70
АО "Промкомплект"
Москва
Гайка ш/г М12
ГОСТ 5915-70
R = (R1 PROJECT[Наименование, Поставщик, Город])
Наименование
Поставщик
Город
Болт ш/г М 12 х 40
ООО "Метизы"
Санкт-Петербург
Гайка ш/г М12
ООО "Метизы"
Санкт-Петербург
Болт ш/г М 12 х 40
АО "Промкомплект"
Москва
Гайка ш/г М12
АО "Промкомплект"
Москва
Шевченко А. В.
Тема 2. Концептуальные модели данных
22
23. Естественное соединение отношений
Организация баз данных в производственных системахЕстественное соединение отношений
R1
Заказ
R2
Дата
Поставщик
Поставщик
Город
12
15.03.2010 ООО "Метизы"
ООО "Метизы"
Санкт-Петербург
13
18.03.2010 АО "Промкомплект"
АО "Промкомплект"
Москва
14
19.03.2010 ООО "Метизы"
R = (R1 JOIN R2 WHERE R1.Поставщик = R2.Поставщик)
Заказ
Дата
Поставщик
Город
12
15.03.2010 ООО "Метизы"
Санкт-Петербург
13
18.03.2010 АО "Промкомплект"
Москва
14
19.03.2010 ООО "Метизы"
Санкт-Петербург
Шевченко А. В.
Тема 2. Концептуальные модели данных
23
24. Левое соединение отношений
Организация баз данных в производственных системахЛевое соединение отношений
R1
Заказ
R2
Дата
Поставщик
Поставщик
Город
12
15.03.2010 ООО "Метизы"
ООО "Метизы"
Санкт-Петербург
13
18.03.2010 АО "Промкомплект"
АО "Промкомплект"
Москва
14
19.03.2010 ООО "Метизы"
ОАО "Стройсервис"
Санкт-Петербург
15
19.03.2010 ТОО "Крепеж"
R = (R1 LEFT JOIN R2 WHERE R1.Поставщик = R2.Поставщик)
Заказ
Дата
R1.Поставщик
R2.Поставщик
Город
12
15.03.2010 ООО "Метизы"
ООО "Метизы"
Санкт-Петербург
13
18.03.2010 АО "Промкомплект"
АО "Промкомплект"
Москва
14
19.03.2010 ООО "Метизы"
ООО "Метизы"
Санкт-Петербург
15
19.03.2010 ТОО "Крепеж"
null
null
Шевченко А. В.
Тема 2. Концептуальные модели данных
24
25. Правое соединение отношений
Организация баз данных в производственных системахПравое соединение отношений
R1
Заказ
R2
Дата
Поставщик
Поставщик
Город
12
15.03.2010 ООО "Метизы"
ООО "Метизы"
Санкт-Петербург
13
18.03.2010 АО "Промкомплект"
АО "Промкомплект"
Москва
14
19.03.2010 ООО "Метизы"
ОАО "Стройсервис"
Санкт-Петербург
15
19.03.2010 ТОО "Крепеж"
R = (R1 RIGHT JOIN R2 WHERE R1.Поставщик = R2.Поставщик)
Заказ
Дата
R1.Поставщик
R2.Поставщик
Город
12
15.03.2010 ООО "Метизы"
ООО "Метизы"
Санкт-Петербург
13
18.03.2010 АО "Промкомплект"
АО "Промкомплект"
Москва
14
19.03.2010 ООО "Метизы"
ООО "Метизы"
Санкт-Петербург
ОАО "Стройсервис"
Санкт-Петербург
null
Шевченко А. В.
null
null
Тема 2. Концептуальные модели данных
25
26. Полное внешнее соединение отношений
Организация баз данных в производственных системахПолное внешнее соединение отношений
R1
Заказ
R2
Дата
Поставщик
Поставщик
Город
12
15.03.2010 ООО "Метизы"
ООО "Метизы"
Санкт-Петербург
13
18.03.2010 АО "Промкомплект"
АО "Промкомплект"
Москва
14
19.03.2010 ООО "Метизы"
ОАО "Стройсервис"
Санкт-Петербург
15
19.03.2010 ТОО "Крепеж"
R = (R1 FULL OUTER JOIN R2 WHERE R1.Поставщик = R2.Поставщик)
Заказ
Дата
R1.Поставщик
R2.Поставщик
Город
12
15.03.2010 ООО "Метизы"
ООО "Метизы"
Санкт-Петербург
13
18.03.2010 АО "Промкомплект"
АО "Промкомплект"
Москва
14
19.03.2010 ООО "Метизы"
ООО "Метизы"
Санкт-Петербург
15
19.03.2010 ТОО "Крепеж"
null
null
ОАО "Стройсервис"
Санкт-Петербург
null
Шевченко А. В.
null
null
Тема 2. Концептуальные модели данных
26