Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПРБД_Ч2.doc
Скачиваний:
6
Добавлен:
25.11.2018
Размер:
813.57 Кб
Скачать

Метод декомпозиции

МД – основан на теории нормальных форм.

Основоположник этой теории – Кодд.

В соответствие с этой теорией все отношения можно классифицировать по принципу наличия тех или иных аномалий.

Здесь – строгая иерархия.

Сначала Кодд дал определение первым трём нормальным формам.

Отношение находится в 1й нормальной форме, если все его атрибуты – атомарны (имеют тривиальную структуру) и обязательны для заполнения.

БКНФ – Бойса-Кодда нормальная форма.

1983г. – доменно – ключевая НФ.

Функциональная зависимость – совокупность атрибутов в В функционально зависит от совокупности атрибутов А: A->B, если каждому значению А соответствует ровно одно значение В.

Из Определения следует, что пустые атрибуты – невозможны.

Пример: (предметная область из предыдущей темы):

Каждая дисциплина преподаётся ровно одним преподавателем.

Учебный процесс(NP, FIO, DOLG, KD, NAME, SP, SEM)

KDNP; KDNAME; KDSP; KDSEM; NPFIO; NPDOLG.

KDFIO; KD, NAME,SP,SEMFIO.

Минимальное покрытие – совокупность функциональных зависимостей, не содержащая избыточные зависимости (для некоторой предметной области).

Избыточная ФЗ – функциональная зависимость, наличие которой следует из других ФЗ.

Для определения избыточных ФЗ используют следующие правила вывода:

1. Рефлексивность:

X: XX.

2. Транзитивность:

(A, B, C) ((AB BC) (AC)).

Пример:

1, - изб., т.к.: 2, 3;

2, - изб., т.к.: 4, 5;

6, - изб., т.к.: 5, 3.

Итак: минимальное покрытие:

3. Расширение:

AB, X: A, XB;

4. Пополнение: AB, для любого X: A, XB, X;

5. Декомпозиция:

AB, C следовательно: (AC AB);

6. Объединение:

Если (AC AB), то AB, C;

7. Псевдотранзитивность:

Если (AB B, XC), то A, XC.

Пример:

1. AC; - избыточная; т.к. 2 и 6;

6. B, EC; изб., т.к. 3; - по правилу 3.

По правилу 5: (AB, E)((AB)(AE)):

AE; - избыточная (по правилу 2, т.к. 4 и 5).

Т.о.:

2a, 3, 4, 5; - минимальное покрытие:

Опр:

Пусть AB, тогда A называется детерминантом этой ФЗ, если B функционально не зависит от любого подмножества атрибутов A. Если A – один атрибут, то он – детерминант.

Опр:

Отношение находится в БКНФ, если каждый детерминант ФЗ является возможным ключом.

Пример:

Преподаватель(NP, FIO, DOLG);

Детерминанты: NP;

Возм. ключи: NP;

т.о.: это отношение находится в БКНФ.

Рекомендации по разбиению.

Необходимо выявить детерминанты ФЗ, которые не являются первичными ключами.

Разбиение осуществляется следующим образом:

1. Из отношения, не находящегося в БКНФ исключается зависимая часть, детерминант которой не является возможным ключом;

2. Первое отношение получается путём удаления атрибутов зависимой части, детерминант которой не является возможным ключом.

3. Во второе отношение включаются атрибуты, участвующие в функциональной зависимости (и детерминант и зависимая часть).

Пример:

R(A, B, C, D, F,…) – отношение;

CD – ФЗ;

С – детерминант, но не возможный ключ в R.

Тогда: R1(A, B, C, F,…); R2(C, D).

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