- •Основы проектирования баз данных.
- •Функциональные зависимости.
- •Аксиомы вывода.
- •Применение аксиом вывода.
- •Ориентированные ациклические графы вывода.
- •Основные определения.
- •Покрытия и эквивалентность.
- •Минимальные покрытия.
- •Кольцевые покрытия и составные зависимости.
- •Нормальные формы реляционных баз данных.
- •Первая нормальная форма бд.
- •Аномалии и вторая нормальная форма бд.
- •Избыточность данных и третья нормальная форма.
- •Многозначные зависимости и четвертая нормальная форма.
- •Нормальная форма вида «проекция-соединение».
- •Концепция модели «Сущность-связь».
- •Типы сущностей.
- •Атрибуты.
- •Типы атрибутов.
- •Типы связей.
- •Структурные ограничения.
Покрытия и эквивалентность.
«Ясность – главное достоинство речи.» АРИСТОТЕЛЬ 384-322гг. до н.э.
В системах реляционных баз данных F-зависимости способствуют обеспечению согласованности и целостности базы данных. Меньшее числоF–зависимостей означает меньший объем используемой памяти и меньшее количество операций проверок при модификации баз данных. Таким образом, меньшее количествоF-зависимостей гарантируют более производительную работу БД.
Два множества F–зависимостей Ф и над схемой R эквивалентны, т.е. Ф, еслиФ++. ЕслиФ, то Ф есть покрытие для .
В определении нет упоминания оразмерах множеств Ф и , однако мы полагаем далее, что Ф не превосходит по мощности . Если Ф, то, поскольку Ф++, для каждой зависимости XY из следует ФXY. Справедливо и симметричное утверждение. Обобщая понятие выводимости множеств, мы получим ФиФ, что влечет зва собой Ф++и+Ф+.
Определение неизбыточных покрытий.
Множество F–зависимостей Ф неизбыточно, если унего нет такого собственного подмножестваФ’, чтоФФ’. Если такое множество Ф’ существует, то исходное множество – избыточно.
Равносильное утверждение. Множество Ф неизбыточно, если в нем не существует F–зависимости XY, такой, что Ф-{XY} XY. Это смвойство можноиспользоват для построения алгоритма проверки избыточности Ф.
Посторонние атрибуты.
Если Ф – неизбыточное множество F–зависимостей, то в нем нет “лишних” зависимостей. Однако размер Ф можно уменьшить, удалив некоторые атрибуты из F–зависимостей из Ф.
Пусть Ф – множество F–зависимостей над R и XYФ. Атрибут А изR называется посторонним в XY, если
X=AZ, XZ и (Ф-{XY}) {ZY} Ф или
Y=AW, YW и (Ф-{XY}) {XW} Ф.
Иными словами, А – посторонний атрибут в XY, если его можно удалить из правой или левой части XY без изменения замыкания Ф. Зависимость XY называется редуцированной слева, если Xне содержит постороннего атрибута А. Аналогично, она называется редуцированной справа, если Y не содержит постороннего атрибута А. Зависимость XY называется редуцированной, если она редуцирована слева и справа и Y.
Если все F-зависимости в Ф редуцированы (слева и\или справа), то множество Ф называется редуцированным (слева и\или справа).
Канонические покрытия.
Множество F-зависимостей называетсяканоническим, если каждаяF–зависимость из Ф имеет вид XA, редуцирована слева и неизбыточна.
Пусть Ф – редуцированное покрытие. Образуем из него каноническое покрытие , расщепляя каждую F–зависимость XA1A2...Am на множество зависимостей XA1,XA2,..., XAm. Покрытие является каноническим. Обратно, если - каноническое покрытие, то оно редуцировано. Отметим, что Ф и эквивалентны.
Структура неизбыточных покрытий.
Что можно сказать о двух неизбыточных покрытиях Ф и Ф’ для множества F–зависимостей помимо того, что ФФ’? Оказывается, что в некотором смысле их структуры схожи, что следует из следующего рассуждения.
Два множества атрибутов X и Y эквивалентны относительно множества F–зависимостей Ф, если ФXYи ФYX(обозначаетсяXY).
Пусть Ф и - эквивалентные неизбыточные множества –зависимостей над схемой R. Допустим, что -XYF-зависимость из Ф, тогда всуществуетF-зависимостьVW и XV относительно Ф (и относительно). Иначе говоря, для заданных эквивалентных неизбыточных покрытий Ф ии каждой левой частиX в F–зависмости из Ф существует эквивалентная левая часть вF-зависимости из.
Пусть Ф – множество F–зависимостей над схемойR и X – множество атрибутов XR. Пусть ЕФ(X) – множествоF–зависимостейиз Ф с левой частью, эквивалентной X. Введем множество
ЕФ(X) = { ЕФ(X)|XR иЕФ(X) }.
Если в Ф не существует F–зависимости с левой частью X, то ЕФ(X).МножествоЕФ(X) всегда является разбиением Ф. Очевидно, что если заданы эквивалентные неизбыточные множества Ф и, тоЕФ(X)не пусто тогда и только тогда, когда не пустоЕ(X), а мощности|ЕФ|и|Е|совпадают.
Неизбыточное покрытие Ф множестваF–зависимостей не объязательно содержит столько жеF–зависимостей, сколько имеет любое другое неизбыточное покрытие.Для нас представляет интерес найти минимальное неизбыточное покрытие.