Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
[конспект] Технологии баз данных [v0.8.1].pdf
Скачиваний:
79
Добавлен:
21.03.2016
Размер:
1.3 Mб
Скачать

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

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

Например, пусть имеется переменная отношения R с за-

головком {Order_id, Product_id, Supplier_id, Supplier, Product, Price, Quantity, Order_date} и множество его функциональных зависимостей:

Product_id Ñ Product;

 

Product_id Ñ Price;

 

Order_id Ñ Order_date;

 

Order_id

Ñ Supplier_id;

 

tOrder_id; Product_idu

Ñ Quantity;

Рис. 1. Пример диаграммы функци-

Supplier_id

Ñ Supplier

ональных зависимостей

Диаграмма изображена на рис. 1.

 

 

Сохранение независимости в смысле Риссанена

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

Определим понятие независимых проекций в смысле Риссанена. Пусть переменная отношения R в результате декомпозиции без потерь была разбита на проекции R1; R2; : : : ; Rn.

Определение 10. Проекции R1; R2; : : : ; Rn называются независимыми в смысле Риссанена тогда и только тогда, когда всякая функциональная зависимость в R также имеет место в естественном соединении всех-проекций Ri, i 1; n.

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

Теорема (Риссанен; Rissanen). Проекции R1 HR1 ; BR1 и R2 HR2 ; BR2 переменной отношения R HR; BR при HR1 X HR2 и HR1 Y HR2 HR будут независимы в смысле Риссанена тогда

итолько тогда, когда

1)каждая функциональная зависимость в R является логическим следствием функциональных зависимостей в R1 и R2

2)и общие атрибуты проекций R1 и R2 образуют потенциальный ключ по крайней мере для одной из этих двух проекций.

Например,

пусть

задано

множество

функциональных

зависимостей

S tA Ñ B; A Ñ C; B Ñ Cu переменной отношения R с атрибутами tA; B; Cu и пусть атрибут A является первичным ключом. Существует несколько способов декомпозиции переменной отношения R на проекции с общим атрибутом:

1.R1 A;BpRq с первичным ключом A и R2 A;CpRq с первичным ключом A. У R1 есть только одна функциональная зависимость A Ñ B, а у R2 A Ñ C, но из этих двух зависимостей не получить B Ñ C, а значит, по теореме Риссанена проекции являются зависимыми, хоть и имеют общий атрибут A в виде первичного ключа.

2.R1 A;BpRq с первичным ключом A и R2 B;CpRq с потенциальным ключом B. У R1 есть зависимость A Ñ B, а у R2 B Ñ C. Из этих функциональных зависимостей можно выразить

40