НФ (Пятая Нормальная Форма)

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

Пример 3. Рассмотрим следующее отношение:

X Y Z

1 1 2

1 2 1

2 1 1

1 1 1

Таблица 14 Отношение R

Всевозможные проекции отношения, включающие по два атрибута, имеют вид:

X Y

1 1

1 2

2 1

Таблица 15 Проекция R1=R[X,Y]

X Z

1 2

1 1

2 1

Таблица 16 Проекция R2=R[X,Z]

Y Z

1 2

2 1

1 1

Таблица 17 Проекция R3=R[Y,Z]

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

X Y Z

1 1 2

1 1 1

1 2 2

1 2 1

2 1 1

Таблица 18 R1 JOIN R2

Определение 5. Пусть является отношением, а,, …, - произвольными (возможно пересекающимися) подмножествами множества атрибутов отношения. Тогда отношение удовлетворяет зависимости соединения

тогда и только тогда, когда оно равносильно соединению всех своих проекций с подмножествами атрибутов,, …,, т.е.

.

Можно предположить, что отношение в примере 3 удовлетворяет следующей зависимости соединения:

.

Утверждать, что это именно так мы пока не можем, т.к. определение зависимости соединения должно выполняться для любого состояния отношения, а не только для состояния, приведенного в примере.

Определение 6. Зависимость соединения называется нетривиальной зависимостью соединения, если выполняется два условия:

-Одно из множеств атрибутов не содержит потенциального ключа отношения.

-Ни одно из множеств атрибутов не совпадает со всем множеством атрибутов отношения.


35.Элементы модели "сущность-связь"

Моделирование структуры базы данных при помощи алгоритма нормализации, описанного в предыдущих главах, имеет серьезные недостатки:

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

Невозможно сразу определить полный список атрибутов. Пользователи имеют привычку называть разными именами одни и те же вещи или наоборот, называть одними именами разные вещи.

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



Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: