Скачиваний:
50
Добавлен:
10.05.2015
Размер:
57.86 Кб
Скачать

MV–зависимости.

Многозначные зависимости, имеющиеся в отношении, вносят избыточность. Если отношение содержит много атрибутов, то избыточность может быть очень большой.

Поэтому отношения MV-зависимостями должны быть приведены в 4 нормальную форму, путем декомпозиции.

Определение MV-зависимостей.

MV-зависимость ранее была определена следующим образом:

Если была задана схема отношения R(x, y) и X и Y атрибуты R, то существует многозначная зависимость Y от X или X→→Y. Если при заданных значениях атрибутов из X существует множество состоящие из нуля или более ассоциированных значений атрибутов из Y и это множество Y- значений не связанно каким либо образом со значениями атрибутов в R-x-y.

Это определение хорошо работает, когда схема отношений имеет вид R(x, y), т.е. состоит из атрибутов X и Y.

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

Для этого случая понятие многозначной зависимости определяется следующим образом:

Пусть R(x, y, z) – реляционная схема отношения R, x и y пересекающиеся подмножества, где (xy) – объединение подмножеств R,пусть Z = R- (xy). Отношение R удовлетворяет многозначной зависимости X→→Y, для любых двух кортежей t и s из R для которых t[x]= s[x], в R существуют кортежи U и V, для которых выполнены условия :

  1. U[x] = V[x] = t[x] = s[x]

  2. U[y] = t[y]

U[R-x-y] = s[R-x-y], R-x-y = z

  1. V[y] = s[y]

V[R-x-] = t[R-x-y]

Обозначение t[x] интерпретируется, как значение атрибута x в кортеже t.Это определение можно использовать для ответа на вопрос: существует ли в отношении зависимость x→→y.

Пример:

Дано отношение

X

Y

Z

Назначение

Рейс

День недели

Тип самолета

t

106

Пн

747

V

106

Чт

747

s

106

Чт

1011

204

Ср

707

204

Ср

727

Нужно определить есть ли Рейс→→День недели. Обозначим 1-й кортеж через t, тогда t[x]= 106. В качестве s – возьмем 3-ий кортеж т.к. s[x] = t[x] = 106.Теперь запишем условия:

U[x] =V[x] = t[x] =s[x] =106

U[y] =t[y] = Пн

U[z] =s[z] =1011

V[y] =s[y] =Чт

V[z] =t[z] =747

Теперь определяем состав кортежей U и V.

U: <106, Пн, 1011>

V: <106, Чт, 747>

Кортежа U в отношении нет. Значит не существует многозначной зависимости Рейс→→День недели.

Из приведенного определения MV-зависимости выводиться так же следствие 1:

Пусть R(x,y,z) – схема отношения R. x,y,z – подмножества из R, такие, что: Z=R-(xy). Отношение R удовлетворяет MV-зависимости X→→Y тогда и только тогда, когда R без потерь разделяется на отношения со схемами R1(x,y) и R2(x,z).

Пример:

Дано отношение R

X

Y

Z

Назначение

Рейс

День недели

Тип самолета

106

Пн

747

106

Чт

747

106

Пн

1011

106

Чт

1011

204

Ср

707

204

Ср

727

Определим: существует ли MV-связь Рейс→→ недели.

Разложим его на отношения:

R1

Рейс

День недели

106

Пн

106

Чт

204

Ср

R2

Рейс

Тип самолета

106

747

106

1011

204

707

204

727

Если R раскладываются без потерь, то это значит, что существует естественное соединение:

R=R1[рейс=рейс]R2

Рейс

День недели

Тип самолета

t 106

Пн

747

U 106

Пн

1011

V 106

Чт

747

s 106

Чт

1011

204

Ср

707

204

Ср

727

Отношение R получено путем естественного соединения отношений R1 и R2. Обратите внимание на то, что здесь появился кортеж U.

Сформулируем еще одно свойство отношения с MV- зависимостью (Следствие 2).

Если R-отношение со схемой R(x, y, z) удовлетворяет MV-зависимость X→→Y и Z = R-(xy), то R удовлетворяет X→→Y.

В нашем примере существует MV-связь.

Рейс→→День недели, а по сформулированному свойству и Рейс→→Тип самолета.

Соседние файлы в папке Дополнительные лекции