- •Основы проектирования баз данных.
- •Функциональные зависимости.
- •Аксиомы вывода.
- •Применение аксиом вывода.
- •Ориентированные ациклические графы вывода.
- •Основные определения.
- •Покрытия и эквивалентность.
- •Минимальные покрытия.
- •Кольцевые покрытия и составные зависимости.
- •Нормальные формы реляционных баз данных.
- •Первая нормальная форма бд.
- •Аномалии и вторая нормальная форма бд.
- •Избыточность данных и третья нормальная форма.
- •Многозначные зависимости и четвертая нормальная форма.
- •Нормальная форма вида «проекция-соединение».
- •Концепция модели «Сущность-связь».
- •Типы сущностей.
- •Атрибуты.
- •Типы атрибутов.
- •Типы связей.
- •Структурные ограничения.
Многозначные зависимости и четвертая нормальная форма.
«Друг все – ничей друг». АРИСТОТЕЛЬ 384-322гг. до н.э.
Реальный мир, как всегда, сложнее любых наших моделей. Пока все наши рассуждения о нормализации схем баз данных строилисть определении простейшей F–зависимости. Но она не единственная, которая может существовать между подмножеством атрибутов схемы. Рассмотрим многозначные зависимости (или MV–зависмости) как свойство реального мира.
Пусть R – реляционная схема,X иY – непересекающиеся подмножестваR, и пусть Z=R-(XY). Отношениеr(R) удовлетворяет многозначной зависимостиX->>Y,если для любых двух кортежей < x y z > и< x y’ z’ > в r(R) существуют < x y z’ > и< x y’ z >.
Если отношение r(R) удовлетворяет МV-зависимости X->>Y иZ=R-(XY), то r(R)удовлетворяет и зависимостиX->>Z. МV-зависимость X->>тривиальным образом удовлетворяется для любых отношений со схемой, содержащейX. Теперь рассмотрим выражение ->>Y. ПустьZ=R-Y и для любых двух кортежей <>=<>=, тогда справедливоY(r(R)) ><Z(r(R)) = r(R). Иначе говоря, наличие многозначной функциональной зависимости в исходном отношении r(R) гарантируетЮ что результат соединения его проекций поY иZ восстанавливает его без потерь.
Многозначные MV-зависимости дополняют множество F-зависмостей Ф и аксиомы вывода для них почти совпадаю. Но их введение связано с тем, что иногда мы можем сделать декомпозицию на три отношения, каждая пара которых не удовлетворяет условию восстановлния проекции-соединения без потерь, а все три – удовлетворяют. Такая ситуация получила названиеJ-зависимости. Если мы добились исключения таких случаев, то наша схема базы данных находится вчетвертой нормальной форме (4НФ). Учет новых видов зависимостей дает более высокие уровни нормализации.
Нормальная форма вида «проекция-соединение».
«...Дела невозможно делать, не страдая или не наслаждаясь при этом».
АРИСТОТЕЛЬ 384-322гг. до н.э.
Целью поиска декомпозиции без потери информации является утранение избыточности информации из отношений. Есть декомпозиции, которым не соотвествуют MV-зависимости, следовательно 4НФ не является всегда наилучшим решением. ОпределимтривиальнуюJ-зависимость *[R1, R2, ..., RK] надR, если она удовлетворяется в любом отношении r(R). Очевидно, что тривиальныеJ-зависимости приложимы к реляционной схеме отношения, еслиR=R1R2...RK.
Пусть R – схема отношения и Ф – множествоF- иJ- зависимостей. R находится в PJ-нормальной форме(PJNF), если если для каждой J–зависимости *[R1,R2,...,RK] выводимой из Ф и приложимой к R, зависимость *[R1,R2,...,RK] выводима из ключевых F-зависимостей в R.
Из PJNF следует 4НФ, следовательно условия PJNF и реализуемости зависимостей не всегда совместимы. Ясно, что на этом многообразие особенностей в представлении схем предметных областей не заканчивается. Но в большенстве программных приложений оказывается вполне достаточным уровень перечисленных выше классических нормализаций схем баз данных.
Для массового и обозримого восприятия содержательных структур связей необходимо иметь более яркое и наглядное описание схем предметных областей. Такое представление было предложено Ченом в 1976г. и получило название концептуальной модели «Сущность-связи» (Entity–Relationship model). С появлением объектно-ориентированной парадигмы программирования эта модель была расширена (EER). В настоящее время эта модель широко используется для проектирования баз данных и других задач системного анализа.