Слайд 1БАНКИ ДАННЫХ
Автор: Емельянов Н. Е.
Правка: Тригуб Н. А.
Слайд 43.1. Концептуальное проектирование
3.1.1. Модель Чена.
Другое название: ER – модель.
Entity – сущность
Relationship – связь
Слайд 5Связь1
Объект 2
Объект 1
Объекту 1
соответствуют
много Об.3
Объект 1
однозначно
опр. Об.2
Связь 2
Объект 3
Пример:
Слайд 6Логическое проектирование, описание предметной области
От решаемых задач (функциональный подход)
От объекта
(предметный подход)
Смешанный подход
Слайд 7Самолет
Номер
Тип
Год выпуска
….
Объект
Атрибуты
Разработаны комплексы средств проектирования моделей Чена (ER)
Erwin Data Modeler
, IBM Rational Rose и др.
Летчик
ФИО
Год рожд
Должность
….
1 : n
Слайд 8Сущность, с помощью которой моделируется класс однотипных объектов. Сущность имеет
имя, уникальное в пределах моделируемой системы. Так как сущность соответствует
некоторому классу однотипных объектов, то предполагается, что в системе существует множество экземпляров данной сущности. Объект, которому соответствует понятие сущности, имеет свой набор атрибутов — характеристик, определяющих свойства данного представителя класса.
Между сущностями могут быть установлены связи — бинарные ассоциации, показывающие, каким образом сущности соотносятся или взаимодействуют между собой.
Слайд 9Пример моделирования связей M:M и 1:M
Пример обязательной и необязательной связи
между сущностями
Слайд 10Диаграмма подтипов сущности ТЕСТЫ
Сущность, на основе которой строятся подтипы, называется
супертипом. Любой экземпляр супертипа должен относиться к конкретному подтипу. Для
графического изображения категоризации сущности вводится специальный графический элемент, называемый узел-дискриминатор. Он изображается в виде полукруга, выпуклой стороной к суперсущности.
Слайд 11Инфологическая модель БД «Библиотека»
Слайд 12Преобразование сущностей и связей к таблицам реляционной БД
Слайд 13Преобразование модели подтипов с наследованием только идентификатора суперсущности
Слайд 143.1.2. Объектное проектирование
Простое данное
Структура
Массив
Слайд 15A
R
Ссылочные данные
Ссылка на шаблон (As)
Ссылка на
значение (Reference)
Слайд 16Пример ссылки на шаблон
Паспортные сведения
Паспорт
Исполнитель
Заказчик
A
A
ФИО
Серия
Номер
Слайд 17Пример ссылки на значение
Вид
Виды
Подвиды
Подвид
Имя
А
Атрибуты
вида
Слайд 18Вид
Виды
Подвиды
Подвид
Имя
А
Атрибуты
вида
Слайд 19Атрибуты
подвида
Имя
Имя
Имя
Атрибуты
вида
Вид
Виды
Подвиды
Подвид
Имя
Подвиды
Подвид
Подвиды
Подвид
Атрибуты
подвида
Подвиды
Подвид
И так далее !!!
Слайд 20Атрибуты
подвида
Имя
Имя
Имя
Атрибуты
вида
Вид
Виды
Подвиды
Подвид
Имя
Подвиды
Подвид
Подвиды
Подвид
Атрибуты
подвида
Подвиды
Подвид
И так далее !!!
Пример рекурсии в
описании данных –
потенциально
бесконечное
дерево
Слайд 213.1.3. Направления проектирования
От решаемых задач (функциональный подход)
От объекта (предметный подход)
3.1.4.
Типовые конструкции проектирования
1) Основные иерархии
Слайд 22Хозяин
Осмотр
Пример основных иерархий
Авто
Марка
ГАИ
Тех. осмотры
Замены
Дата
№ п/п
Цена
N
R
Человек
Люди
ФИО
Адрес
Гараж
N
Авто
Авто
Слайд 232) Классификаторы
Классы
Подклассы
Подкласс
Имя
А
Атрибуты
класса
Класс
R
Объекты
Ссылка на
объект в
основной
иерархии
Слайд 243) Разузлование ( Loop – петля )
Узлы (детали)
Входящие узлы
Узел
Имя
R
Атрибуты
Узел
Имя
Атрибуты
сборки
Слайд 25В
Применяется, если А, В, С однотипны и ключи а, в,
с уникальны
А
С
в
с
а
А-В-С
а-в-с
R
Атрибуты
а-в-с
Атрибуты
Атрибуты
Атрибуты
Слайд 26Пример А. Генеалогическое древо (родословие)
Люди
Дети
ФИО
R
R
ФИО
R
Отец
Мать
(все представители рода)
Слайд 27Пример Б. Тезаурус
Понятия
Сино-
нимы
Название
R
Назв
Уточ.
понятия
R
Назв
R
Назв
Обобщ.
понятия
Слайд 28Идентификатор
объекта
Значение
Атрибуты
Значения
Объекты
Имя
R
Основные иерархии
Вес
4) Атрибутная справочная
Слайд 29Идентификатор
объекта
Значение
Атрибуты
Значения
Объекты
Имя
R
Основные иерархии
Вес
4) Атрибутная справочная
Слайд 30Ref
N Города
Маршруты
Города
Операции
№ п/п
Цена
N
R
Города
Имя
Число ж.
Число
дней
Дата
Нераб.
дни
5) Нормативно – справочная информация (НСИ)
Имя Гор.
Слайд 313.2. Логическое проектирование
3.2.1. Проектирование для реляционных баз данных
Необходима нормализация –
разрезка на двумерные таблицы.
Обозначим: НФ – нормальная форма.
1НФ. Определение.
БД находится в 1НФ, если во всех отношениях все атрибуты атомарны (неделимы)
Слайд 33Недостатки:
Избыточность
Включение новых объектов (нельзя ввести потребителя без изготовителя)
Удаление (удалив П3
– удалим и И4)
Обновление (изменение атрибута
Город-Изгот во
многих местах, при изменении адреса)
Слайд 34
2НФ.
БД находится во 2НФ, если она в
1НФ и каждый неключевой атрибут функционально полно зависит от ключа.
Функционально полная зависимость – зависимость от ключа в целом (не от части ключа, если ключ совокупность атрибутов).
Слайд 37Недостатки 2НФ:
Избыточность – многократное повторение кода города
Слайд 38
3НФ.
БД находится во 3НФ, если она во
2НФ и каждый неключевой атрибут нетранзитивно зависит от ключа.
Слайд 424НФ применяется при многозначных зависимостях
X1
Y1
Y2
….
Yn
Слайд 43Пример многозначных зависимостей
Курсы
Название
Учебники
Назв
ФИО
Преподаватели
Слайд 444НФ. Определение.
БД находится в 4НФ, если она в
3НФ и в каждом отношении не более одной многозначной зависимости
Слайд 47Отношение находится в пятой 5НФ (НФ проекции-соединения — PJNF) в
том и только в том случае, когда любая зависимость соединения
в R следует из существования некоторого возможного ключа в R.
Рассмотрим отношение R1: <Преподаватель, Кафедра, Дисциплина>
Предположим, что каждый преподаватель может работать на нескольких кафедрах и на каждой кафедре может вести несколько дисциплин. В этом случае ключом отношения является полный набор из трех атрибутов. В отношении отсутствуют многозначные зависимости, и поэтому отношение находится в 4НФ. Введем следующие обозначения наборов атрибутов:
ПК (Преподаватель, Кафедра)
ПД (Преподаватель, Дисциплина)
КД (Кафедра, Дисциплина)
Допустим, что отношение R1 удовлетворяет зависимости проекции соединения (ПК, ПД, КД). Тогда отношение R1 не находится в PJNF, потому что единственным ключом его является полный набор атрибутов, а наличие зависимости PJ связано с наборами атрибутов, которые не составляют возможные ключи отношения R1. Для того чтобы привести R1 к PJNF, его надо представить в виде трех отношений: ПК, ПД, КД.
Слайд 48Оценки объемов БД
Пусть Курсов – К, Преподавателей – П, Учебников
– У, средние длины всех полей – L, тогда объем
БД в 3НФ
V= 3*К*П*У*L. Если К=П=У=k, то
В 3НФ V= 3L*k3 (символов)
В 4НФ V= 2L*k2
В объектной модели V= 3L*k
Слайд 49Вопросы по НФ
Можно ли по примеру заполненного отношения понять в
какой нормальной форме оно находится?
НЕТ
Из 1НФ всегда ли можно
перейти к 2НФ?
ДА
Из 2НФ всегда ли можно перейти к 1НФ?
НЕТ
Приведение БД к 2НФ, 3НФ и 4НФ всегда ли однозначно?
НЕТ
Слайд 503.2.2. От модели Чена к реляционной
A
B
C
P
F
Q
R
M
N
E
ABCE
AP
PQR
CF
FM
FN
Набор отношений реляционной БД в
4НФ
Слайд 51X
P
R
T
A
R
S
S1
Y
H
Q
B
C
G
E
C
M
N
3.2.3. От об. - ор. модели к реляционной
P (A,B,C)
Q (A,E)
R
(A,G,H)
T (A,G,X,Y)
S (C,M,N)
Ссылки Ref
опускаются
Слайд 52X
P
R
T
A
R
S
S1
Y
H
Q
B
C
G
E
C
M
N
3.2.3. От об. - ор. модели к реляционной
P (A,B,C)
Q (A,E)
R
(G,H)
T (X,Y)
S (C,M,N)
Если G и X глобально уникальны, то
Слайд 53Города
Назв
Код
Организации (Изг. и Потр.)
ШифрО
Потреб
Кол-во
ШифрП
R
R
Конструкция петли
(разузлования)
Нормативно справочная
информация
3.2.4. Проектирование для об.
- ор. СУБД
Слайд 54Пример решения задачи с учебными курсами в об.-ор. СУБД.
По объему
памяти лучше чем 4НФ (3L*k вместо 2L*k2)
Курсы
Название
Учебники
Назв
ФИО
Преподаватели