Проектирование БД

Содержание

Слайд 2

ВВЕДЕНИЕ Проектирование БД – одна из наиболее ответственных и трудных задач,

ВВЕДЕНИЕ

Проектирование БД – одна из наиболее ответственных и трудных задач,

связанных с созданием информаци-онной системы. В результате ее решения должны быть определены и содержание БД, и эффективный с точки зрения всего сообщества будущих пользователей способ ее организации, и инструментальные средства управ-ления данными.
Слайд 3

1. Принципы концептуального проектирования БД Процесс проектирования включает в себя следующие

1. Принципы концептуального проектирования БД

Процесс проектирования включает в себя следующие

этапы:
инфологическое проектирование;
определение требований к операционной обстановке;
выбор СУБД;
логическое проектирование;
физическое проектирование.
Слайд 4

1.1. Этап инфологического проектирования Первой задачей инфологического проекти-рования является определение предметной

1.1. Этап инфологического проектирования

Первой задачей инфологического проекти-рования является определение предметной

области системы, позволяющее изучить информационные потребности будущих пользователей.
Формирование взгляда на предметную область с позиций уже сформировавшегося или потенциального сообщества будущих пользователей БД является второй задачей стадии инфологического проектирования.
Слайд 5

Такое представление предметной об-ласти – ее инфологическая модель – выражается в

Такое представление предметной об-ласти – ее инфологическая модель – выражается

в терминах не отдельных объектов предметной области и связей между ними, а их типов, связанных с ни-ми ограничений целостности, а также тех процессов, которые приводят к пе-реходу из одного состояния системы в другое. В простейших случаях проек-тировщик БД ограничивается содержа-тельным описанием модели предмет-ной области на естественном языке.
Слайд 6

Наряду с использованием естественного языка проектировщик может также при-менять разнообразные выразительные

Наряду с использованием естественного языка проектировщик может также при-менять разнообразные

выразительные средства для изображения структуры предметной области, например, графы, вершинам которых соответствуют типы объектов, а ребрам – типы связей между ними (диаграммы Бахмана, ER-диа-граммы сущностей-связей и др.). Можно также использовать средства автомати-зации проектирования, например, CASE-средства (интерфейс Erwin).
Слайд 7

1.2. Этап определения требований к операционной обстановке Этот этап предполагает оценку

1.2. Этап определения требований к операционной обстановке

Этот этап предполагает оценку

тре-бований к вычислительным ресур-сам, необходимым для функциониро-вания проектируемой информацион-ной системы, определение типа и конфигурации ЭВМ, на которой она будет функционировать, выбор типа и версии операционной системы.
Слайд 8

1.3. Выбор СУБД Проектировщики БД при выборе ин-струментальных средств (СУБД) ру-ководствуются

1.3. Выбор СУБД

Проектировщики БД при выборе ин-струментальных средств (СУБД) ру-ководствуются

чаще всего собствен-ными интуитивными экспертными оценками требований к выбираемой СУБД по нескольким важным коли-чественным и качественным харак-теристикам. К числу таких характе-ристик относятся:
Слайд 9

тип модели данных, которую поддерживает выбранная СУБД, ее адекватность потреб-ностям моделирования

тип модели данных, которую поддерживает выбранная СУБД, ее адекватность потреб-ностям

моделирования рассматриваемой предметной области;
характеристики производительности системы;
запас функциональных возможностей выб-ранной СУБД для дальнейшего развития информационной системы;
степень оснащенности СУБД инструментари-ем для персонала администрирования данны-ми;
удобство и надежность СУБД в эксплуатации.
Слайд 10

1.4. Этап логического проектирования Этот этап проектирования заключается в создании схемы

1.4. Этап логического проектирования

Этот этап проектирования заключается в создании схемы

БД, в разработке ее логической структуры в соответствии с инфологической моделью, в опреде-лении числа и структуры отношений, формировании запросов к БД, опреде-лении типов отчетных документов, разработке алгоритмов обработки ин-формации, создании форм для ввода и редактирования данных в БД.
Слайд 11

1.5. Этап физического проектирования Проектирование на физическом уров-не во многом зависит

1.5. Этап физического проектирования

Проектирование на физическом уров-не во многом

зависит от используе-мой СУБД, зачастую автоматизиро-вано и скрыто от пользователя. В ряде случаев пользователю предо-ставляется возможность настройки отдельных параметров системы, которая обычно не составляет большой проблемы.
Слайд 12

2. Метод нормальных форм – классический метод проектирования реляционных БД Проектирование

2. Метод нормальных форм – классический метод проектирования реляционных БД

Проектирование

БД является одним из этапов жизненного цикла инфор-мационной системы. Основной задачей в процессе проектирования БД является задача нормализации ее отношений.
Метод нормальных форм основан на фундаментальном в теории реляционных БД понятии зависимости между атри-бутами отношений.
Слайд 13

2.1. Функциональная зависимость между атрибутами Определение 1. Атрибут B функцио-нально зависит

2.1. Функциональная зависимость между атрибутами

Определение 1. Атрибут B функцио-нально зависит

от атрибута A, если каждому значению атрибута A соот-ветствует в точности одно значение атрибута B.
Обозначение: A → B.
Атрибуты A и B могут быть состав-ными, то есть состоять из двух и более атрибутов.
Слайд 14

Виды функциональных зависимостей Определение 2. Атрибут C зависит от атрибута A

Виды функциональных зависимостей

Определение 2. Атрибут C зависит от атрибута A транзитивно,

если существует атрибут B такой, что если
A → B и B → C, то A → C.
Обозначают: A → B → C.
Например, оклад преподавателя транзитивно зависит от его должности (здесь A – фамилия, имя, отчество преподавателя, B – должность, C – оклад).
Слайд 15

Определение 3. В некотором отно-шении атрибут B многозначно зави-сит от атрибута

Определение 3. В некотором отно-шении атрибут B многозначно зави-сит от

атрибута A, если каждому зна-чению атрибута A соответствует мно-жество значений атрибута B, не свя-занных с другими атрибутами из дан-ного отношения. Многозначные зави-симости могут быть вида 1:M, M:1 и M:M. Обозначения соответственно:
A ⇒ B, A ⇐ B, A ⇔ B.
Слайд 16

Например, пусть преподаватель ведет несколько дисциплин, и каждая дисци-плина может вестись

Например, пусть преподаватель ведет несколько дисциплин, и каждая дисци-плина может вестись

несколькими преподаватеями. Тогда имеется зави-симость ФИО ⇔ Дисциплина (M:M).
Функциональная зависимость может быть частичной, когда неключевой атрибут за-висит от части составного ключа. Зависи-мость между атрибутами может быть вза-имно однозначной, то есть вида 1:1 (A↔B). Выделяют также взаимно незави-симые атрибуты.
Слайд 17

Основной способ определения функцио-нальных зависимостей – внимательный анализ семантики атрибутов. Предлагаем

Основной способ определения функцио-нальных зависимостей – внимательный анализ семантики атрибутов.
Предлагаем самостоятельно

определить вид функциональной зависимости в отно-шении «Преподаватель»:
ФИО - Оклад; ФИО – Должность;
ФИО-Стаж; ФИО – Н_Должность; ФИО – Кафедра; Должность – Н_Должность; ФИО. Дисциплина. Группа – Вид_занятия, где Н_Должность означает надбавку за должность.
Слайд 18

2.2. Общие сведения о нормальных формах Иногда отношения содержат избы-точное дублирование

2.2. Общие сведения о нормальных формах

Иногда отношения содержат избы-точное дублирование

данных, которое является причиной аномалий редакти-рования. Различают избыточность явную и неявную.
Например, в отношении «Препода-ватель» кортежи с данными о пре-подавателе, проводящему занятия в нескольких группах, могут повторяться несколько раз.
Слайд 19

Поэтому, если у этого преподавателя изменится значение какого-то атрибута, то этот

Поэтому, если у этого преподавателя изменится значение какого-то атрибута, то этот

факт должен быть отражен во всех кортежах, где он задействован. В противном случае будет иметь место противоречие в данных, что является примером аномалии редактирования, обусловленной явной избыточностью данных.
Неявная избыточность в отношении «Преподаватель» может проявиться в одинаковых окладах у всех препода-вателей и в одинаковых надбавках к окладу за одинаковую должность.
Слайд 20

Действительно, если изменятся оклады за должность у всех преподавателей, кроме одного,

Действительно, если изменятся оклады за должность у всех преподавателей, кроме одного,

то БД станет противоречивой.
Нормализация отношений и является как раз средством исключения избыточности.
Поскольку зависимость между атрибутами является причинной аномалией, стара-ются провести декомпозицию отношения с зависимостями атрибутов на несколько отношений. В результате образуется со-вокупность связанных отношений с раз-личными видами связей. Таким образом, связи между таблицами отражают зави-симости между атрибутами различных отношений.
Слайд 21

После того, как выделены все функцио-нальные зависимости, следует проверить их согласованность

После того, как выделены все функцио-нальные зависимости, следует проверить их согласованность

с данными исходного отношения.
Процесс проектирования БД с использо-ванием метода нормальных форм явля-ется итеративным и заключается в пос-ледовательном переводе отношений из первой нормальной формы в нормальные формы более высокого порядка по определенным правилам.
Слайд 22

Каждая следующая нормальная форма (НФ) ограничивает определенный тип функциональных зависимостей, устра-няет

Каждая следующая нормальная форма (НФ) ограничивает определенный тип функциональных зависимостей, устра-няет

соответствующие аномалии при выполнении операций над отношениями БД и сохраняет свойства предшест-вующих нормальных форм. Выделяют следующую последовательность нор-мальных форм: 1НФ, 2НФ, 3НФ, уси-ленная 3НФ или нормальная форма Бойса-Кодда (БКНФ), 4НФ и 5НФ.
Слайд 23

2.3. Первая нормальная форма Отношение R находится в 1НФ, если все

2.3. Первая нормальная форма

Отношение R находится в 1НФ, если все

его атрибуты являются простыми (имеют единственное значение).
Исходное отношение строится таким образом, чтобы оно было в 1НФ.
Слайд 24

2.4. Декомпозиция без потерь Под декомпозицией без потерь или проецированием без

2.4. Декомпозиция без потерь

Под декомпозицией без потерь или проецированием без

потерь данного отношения понимается такой способ де-композиции этого отношения, при котором оно полностью и без избыточности восста-навливается путем естественного соеди-нения полученных отношений.
Такая декомпозиция должна обеспечивать одинаковый результат запроса к исход-ному отношению и к отношениям, полу-чаемым в результате декомпозиции.
Слайд 25

2.5. Вторая нормальная форма Отношение R находится во 2НФ, ес-ли каждый

2.5. Вторая нормальная форма

Отношение R находится во 2НФ, ес-ли каждый

его неключевой атрибут функционально полно зависит от составного первичного ключа.
Для устранения частичной избыточ-ности и перевода отношения R во 2НФ необходимо, используя операцию про-екции, разложить его (то есть произ-вести операцию декомпозиции без по-терь) на несколько отношений следую-щим образом:
Слайд 26

построить проекцию отношения R без атрибутов, находящихся в частичной функциональной зависи-мости

построить проекцию отношения R без атрибутов, находящихся в частичной функциональной зависи-мости

от первичного ключа;
построить проекции на части сос-тавного первичного ключа и атри-буты, зависящие от этих частей.
Слайд 27

2.6. Третья нормальная форма Существует два равносильных опреде-ления 3НФ: Отношение R

2.6. Третья нормальная форма

Существует два равносильных опреде-ления 3НФ:
Отношение R находится

в 3НФ, если каждый его неключевой атрибут не-транзитивно зависит от первичного ключа.
Отношение R находится в 3НФ в том и только в том случае, если все его неключевые атрибуты взаимно неза-висимы и полностью зависят от пер-вичного ключа.
Слайд 28

2.7. Третья усиленная нормальная форма Отношение R находится в НФ Бойса-Кодда

2.7. Третья усиленная нормальная форма

Отношение R находится в НФ Бойса-Кодда

(БКНФ), если в нем отсутствуют зависимости клю-чей (атрибутов составного клю-ча) от неключевых атрибутов.
При этом, как и в предыдущих определениях нормальных форм, должны сохраняться все свойства предыдущих нормальных форм.
Слайд 29

2.8. Теорема Фейджина В произвольном отношении R(A, B, C) может одновременно

2.8. Теорема Фейджина

В произвольном отношении R(A, B, C) может одновременно

существовать многозначная зависимость вида A ⇒ B и A ⇒ C (обозначение: A ⇒ B|C).

Переход к 4НФ основывается на теореме Фейджина: отношение R(A, B, C) можно спроецировать без потерь на отно-шения R1(A, B) и R2(A, C) в том и только в том случае, когда суще-ствует зависимость A ⇒ B|C).

Слайд 30

2.9. Четвертая нормальная форма Отношение R находится в 4НФ в том

2.9. Четвертая нормальная форма

Отношение R находится в 4НФ в том

и только в том случае, когда существует многозначная зави-симость вида A ⇒ B, а все ос-тальные атрибуты отношения R функционально зависят от атри-бута A.
Заметим, что в общем случае не всякое отношение, находящееся в 4НФ, можно восстановить к исходному отношению.
Слайд 31

Результатом нормализации всех предыдущих схем является два новых отношения. Иногда это

Результатом нормализации всех предыдущих схем является два новых отношения. Иногда

это сделать не удается, либо полу-чаемые отношения заведомо имеют нежелательные свойства. В этом случае выполняют деком-позицию исходного отношения на отношения, количество которых больше двух.
Слайд 32

Введем определение зависимости соединения. Говорят, что отноше-ние R(X, Y, …, Z)

Введем определение зависимости соединения. Говорят, что отноше-ние R(X, Y, …,

Z) удовлетворяет зависимости соединения в том и только в том случае, если R восстанавливается без потерь путем соединения своих проекций на атрибуты X, Y, …, Z.
Зависимость соединения является обобщением функциональной и многозначной зависимостей.
Слайд 33

2.10. Пятая нормальная форма Отношение R находится в 5НФ (или нормальной

2.10. Пятая нормальная форма

Отношение R находится в 5НФ (или нормальной

форме проек-ции-соединения – PJ/NF) в том и только в том случае, когда лю-бая зависимость соединения в отношении R следует из суще-ствования некоторого возмож-ного ключа в R.
Слайд 34

Условия получения пятой нормаль-ной формы весьма нетривиальны и поэтому на практике

Условия получения пятой нормаль-ной формы весьма нетривиальны и поэтому на практике

она использу-ется редко. Обычно ограничиваются структурой БД, соответствующей 3НФ или БКНФ. Поэтому процесс нормализации отношений методом нормальных форм предполагает по-следовательное удаление из исход-ного отношения следующих межат-рибутных зависимостей: