- Многозначная зависимость
-
Многозна́чная зави́симость (тж. МЗЗ) — обобщение понятия функциональной зависимости, широко использующееся в теории баз данных. В концепции нормальных форм вводится для формального определения четвертой нормальной формы
Содержание
Определения
Пусть существует некоторое отношение со схемой , а также два произвольных подмножества атрибутов . Пусть .
В этом случае многозначно зависит от , тогда и только тогда, когда множество значений атрибута , соответствующее заданной паре отношения , зависит от и не зависит от .
Символически выражается записью
- .
ФормальноМногозначная зависимость называется тривиальной, если выполняется хотя бы одно из условий:
- Множество является надмножеством ;
- Объединение и образует весь заголовок отношения.
Пример
Предположим, у нас есть отношение, в которое входит список учебных дисциплин, рекомендованная литература и имена лекторов, читающих соответствующие курсы:
Учебные дисциплины Дисциплина Книга Лектор МатАн Кудрявцев Иванов А. МатАн Фихтенгольц Петров Б. МатАн Кудрявцев Петров Б. МатАн Фихтенгольц Иванов А. МатАн Кудрявцев Смирнов В. МатАн Фихтенгольц Смирнов В. ВМ Кудрявцев Иванов А. ВМ Кудрявцев Петров Б. Так как лекторы, читающие предмет, и книги, рекомендованные по предмету, друг от друга не зависят, то данное отношение содержит многозначную зависимость. Такое отношение обладает целым рядом аномалий. Одна из них состоит в том, что если мы хотим порекомендовать новую книгу по курсу МатАн, нам придется добавить столько новых записей, сколько лекторов ведут МатАн и наоборот.
Формально, здесь две МЗЗ: {Дисциплина} {Книга}|{Лектор}.
Во-первых, это избыточно. А во-вторых, для такого отношения необходимо разрабатывать дополнительный механизм контроля целостности. Оптимальным решением проблемы будет декомпозиция отношения на два с заголовками {Дисциплина, Книга} и {Дисциплина, Лектор}. Такая декомпозиция будет находиться в 4NF. Допустимость декомпозиции устанавливает теорема Феджина (см. далее).
Теоремы
Связные пары
Феджин показал, что многозначные зависимости образуют связные пары (в обозначениях определения):
- .
Поэтому их часто представляют вместе в символической записи:
Функциональные зависимости
Всякая функциональная зависимость является многозначной. Другими словами, функциональная зависимость — это многозначная зависимость, в которой множество зависимых значений, соответствующее заданному значению детерминанта, всегда имеет единичную мощность.
Правила вывода
В 1977 году Бэри, Феджин и Ховард установили, что правила вывода Армстронга можно обобщить и распространить, как на функциональные, так и на многозначные зависимости.
Пусть у нас есть отношение и множества атрибутов . Для сокращения записи вместо будем писать просто .
Группа 1: базовые правила.- Дополнение
- Транзитивность
- Рефлексивность
- Приращение
Группа 2: выводятся несколько дополнительных правил, упрощающих задачу вывода многозначных зависимостей.- Псевдотранзитивность
- Объединение
- Декомпозиция
Группа 3: устанавливается связь между функциональными и многозначными зависимостями.- Репликация (копирование)
- Слияние
Группа 4: для функциональных зависимостей, выводятся из вышеприведенных правил.
Правила вывода Армстронга вместе с изложенными здесь правилами групп 1 и 3 образуют полный (используя их, можно вывести все остальные многозначные зависимости, подразумеваемые данным их множеством) и надежный («лишних» многозначных зависимостей вывести нельзя; выведенная многозначная зависимость справедлива везде, где справедливо то множество многозначных зависимостей, из которого она была выведена) набор правил вывода многозначных зависисмостей.Применение
Декомпозиция отношений
Теорема Феджина
Пусть дано отношение . Отношение будет равно соединению его проекций и тогда и только тогда, когда для отношения выполняется нетривиальная многозначная зависимость .
Эта теорема является более строгой версией теоремы Хита.
См. также
- Реляционная модель данных
- Проектирование баз данных
- Функциональная зависимость (программирование)
- 4NF
Литература
- К. Дж. Дейт Введение в системы баз данных = Introduction to Database Systems. — 8-е изд. — М.: «Вильямс», 2006. — С. 1328. — ISBN 0-321-19784-4
Категории:- Реляционная модель данных
- Теоретические основы баз данных
Wikimedia Foundation. 2010.