Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BD_PM_Final.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
963 Кб
Скачать
☆

69. Многозначные зависимости.

Рассмотрим отношение

CTX (Course, Teacher, teXts)

CTX (C, T, X)

Очевидно, что это ненормализованное отношение, т.к. Teacher, Texts – массивы. Очевидно, что в этом отношении никаких ФЗ кроме тривиальных (С –> С) нет. Поэтому перепишем данное отношение в 1 НФ.

Нормальное отношение СТХ означает, что любой кортеж {C, T, X} принадлежит телу отношения СТХ тогда и только тогда когда выполняются следующие ограничения:

IF THEN .

Очевидно, что отношение СТХ, несмотря на отсутствие ФЗ характеризуется значительной избыточностью и приводит к многочисленным аномалиям обновления.

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

Но самое удивительное, что отношение СТХ формально находится в НФБК поскольку является полностью ключевым.

Возникает вопрос: какой же тип ограничений указанный выше в форме IF THEN необходимо ввести чтобы понять источник указанных аномалий. Оказывается в 1971 году Фейгином строго было доказано, что подобные проблемы в НФБК могут быть описаны с помощью многозначных зависимостей. Действительно в отношении СТХ можно выделить такие многозначные зависимости как:

Course –>–> Teacher

Course –>–> Texts

Т.е. многозначные зависимости можно рассматривать как обобщение ФЗ в том смысле, что любая ФЗ автоматически является многозначной, когда правая часть является одноэлементной. Обратное не верно, т.е. существуют МЗ, которые не являются функциональными, например МЗ Course –>–> Teacher означает, что с одной стороны для любого курса не существует одного преподавателя, т.е. ФЗ С–>T не выполняется, тем не менее, для любого курса существует вполне определенное множество преподавателей.

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

CT <– CTX (C, T, X) –> CX

Будем иметь:

Однако формальное определение многозначной зависимости основано на гораздо более строгих терминах, чем интуитивное понятие.

Действительно, когда мы утверждаем, что любому курсу соответствует вполне определенное множество преподавателей, мы тем самым имеем ввиду, что для данного курса с и данного учебника x существует множество преподавателей t обязательно соответствующих паре {c,x}, т.е. с одной стороны любой кортеж {ctx} зависит от значения с и не зависит от значения x. А из второй многозначной зависимости следует, что, любой кортеж отношения СТХ зависит от с и совершенно не зависит от t. Именно поэтому формальное определение многозначной зависимости имеет вид

R(A,B,C) подмножества тогда и только тогда когда множество значений из В соответствующее любой паре {a,c} зависит только от а и не зависит от с.

Фейгином было показано, что если отношение R в точности состоит из атрибутов АВС, то МС А –>–> B выполняется тогда и только тогда когда выполняется A –>–> С.

Доказанная теорема позволяет утверждать, что МЗ всегда образует связанные пары, вот почему определение МЗ в символическом виде обычно записывают A –>–> B/C, например Course –>–> Teacher/Texts.

Рассматривая формальное определение МЗ, мы снова можем утверждать, что МЗ является обобщением ФЗ в том смысле, что всякая ФЗ является многозначной.

Наконец возвращаясь, к примеру СТХ можно констатировать что именно отсутствие ФЗ а точнее присутствие МЗ которые не являются ФЗ и есть источник аномалий.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]