Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

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

Пусть А, В и С являются произвольными подмножествами множества атрибутов отношения R. Говорить, что В многозначно зависит от А (А–››В или А многозначно определяет В), тогда и только тогда, когда множество значений (множество атрибутов) В зависит от множества значений атрибутов А и не зависит от множества значений атрибута С.

Рассматриваются зависимости, которые выполняются всегда, а не для данного состояния отношения.

Если в отношении R {А, В, С} выполняется многозначная зависимость А–››В, то каждому значению атрибутов А соответствует некоторое множество значений атрибутов В, причем значение атрибутов В не зависит от значения атрибутов С, а зависит только от значений атрибутов А. Таким образом, если зафиксировать значения А получим (a, b1, c1), (a, b2, c2)…(a, bn, cn), но тогда значению а соответствует некоторое множество значений В: {b1, b2… bn}, но а соответственно множество значений С: {с1, с2… сn}, т.е. существует и А–››С.

Этот факт имеет место всегда, т.е. многозначные зависимости существуют парами, что регистрируется как: А–››В|С, для примера КУРС–››ПРЕПОДАВАТЕЛЬ|УЧЕБНИК.

Заметим, что ФЗ является частным случаем многозначной зависимости (МЗ).

 

3. Теорема Фейгина.

Пусть А, В и С являются множествами атрибутов отношения R{А, В, С}. Отношение R будет равно соединению его проекций {A, B} и {A, C} тогда и только тогда, когда для отношения R выполняется многозначная зависимость А–››В|С.

Эта теорема является обобщенной теоремой ХЕЗА.

Отношение R находится в четвертой нормальной форме (4НФ) тогда и только тогда, когда если существуют такие подмножества А и В атрибутов отношения R, что выполняется (нетривиальная) многозначная зависимость А–››В, то все атрибуты отношения R также функционально зависимы от атрибута А.

В 4НФ могут существовать только нетривиальные зависимости (функциональные или многозначные) вида K→X, где К – потенциальный ключ, Х – любой атрибут.

Отношение R находится в 4НФ, если оно находится в НФБК и все многозначные зависимости являются фактически функциональными зависимостями от потенциальных ключей.

Отношение R не находится в 4НФ, т.к. содержит многозначную зависимость, не говоря о том, что она должна быть функциональной зависимостью от потенциального ключа. Отношения R1 и R2находятся в 4НФ.

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

Алгоритм транзитивной зависимости А→В и В→С можно ввести понятие многозначной функциональной зависимости А–››В и В–››С. В этом случае (наличие многозначной транзитивной зависимости) отношение R (A, B, C) следует также разбить на два отношения {А, В} и {В, С}.

 

4. Зависимости соединений и пятая нормальная форма.

Рассмотрим пример:

R

Поставщик Детали Проекты
Иванов    
Иванов    
Петров    
Иванов    

Пусть данное отношение является полностью ключевым, не содержит нетривиальных и многозначных зависимостей, т.е. находится в 4НФ.

Рассмотрим три проекции этого отношения:

R1

Поставщик Детали
Иванов  
Иванов  
Петров  

R2

Детали Проекты
   
   
   

R3

Проекты Поставщик
  Иванов
  Иванов
  Петров

Соединим R1 и R2 по атрибуту детали

R4

Поставщик Детали Проект
Иванов    
Иванов    
     
Иванов    
Петров    

Петров11Соединим R4 и R3 по комбинации атрибутов (проект, поставщик)

R5

Поставщик Детали Проект
Иванов    
Иванов    
Иванов    
Петров    

Отношение R5=R

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

Итак получили свойства отношения R:

Отношение R нельзя разбить ни на какие два отношения, которые после соединения будут опять отношения R. Но если разбить R на три отношения, то после их соединения получим исходное отношение R. Такое отношение называется 3-х декомпозируемым отношением. Аналогично можно определить n-декомпозируемые отношения.

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

Свойства 3-х – декомпозируемости рассмотрено на конкретном состоянии отношения (в некоторый момент времени). Это свойство может быть и более фундаментальным и не зависеть от времени. Обозначим RSPJ {S, P, J}

RSP {S, P}=ПSPRSPJ

RPJ {P, J}=ПPJRSPJ

RJS {J, S}=ПJSRSPJ

(1) (RSPJ =RSP join RPJ join RJS)~

(2) ~((s1, p1)Î RSP)^ ((p1, j1)Î RPJ)^ ((j1, s1)Î RJS)→((s1, p1, j1)Î RSPJ) – обратное выполняется всегда!

(s1, p1)Î RSP) ~(s1, p1, j2)Î RSPJ

(p1, j1)Î RPJ)~(s2, p1, j1)Î RSPJ

(j1, s1)Î RJS)~ (s1, p2, j1)Î RSPJ

(3) ((s1, p1, j2)Î RSPJ)^((s2, p1, j1)Î RSPJ)^((s1, p1, j2)Î RSPJ)→ (s1, p1, j1)Î RSPJ

Смысл (3): если s1 связано с p1 (т.е. находится в одном кортеже (вспомнить прямое произведение)), p1 связано с j1, и j1 связано опять с s1, то s1, p1 и j1 должны находится в одном кортеже. Это циклическое ограничение!

Отношение будет n-декомпозируемым для n>2 тогда и только тогда, когда оно удовлетворяет некоторому циклическому ограничению.

Кратко 3-декомпозируемое ограничение обозначим 3D ограничение. Вернемся к примеру приведенному выше.

Пусть: деталь 1 – гаечные ключи, деталь 2 – гайки, тогда 3D ограничение для нашего примера означает:

Если Иванов поставляет гаечные ключи и гаечные ключи поставляются по проекту1, и Иванов является поставщиком проекта 1, то Иванов поставляет гаечные ключи по проекту 1.

Замечание: Данное утверждение справедливо не для всех отношений, а только для 3-декомпозируемых отношений, т.е. 3D ограничение должно присутствовать в предметной области.

Вывод (замечание):

3D ограничение удовлетворяется тогда и только тогда, когда отношение равносильно соединению некоторых его проекций, то такие ограничения называют зависимостью соединений.

Зависимость соединения такое же ограничение, как многозначная и функциональная зависимость.

Пусть R – отношение A, B, … Z – произвольные подмножества множества атрибутов отношения R. Отношение R удовлетворяет зависимости соединения (записывают *(A, B, … Z)) тогда и только тогда, когда оно равносильно соединению своих проекций с подмножества атрибутами A, B, …Z.

Для отношения {S, P, J} обозначим SP={S, P}, PJ={P, J}, SJ={S, J}.

Пусть отношение обладает зависимостью.

Замечание: пусть дано отношение

R:{A, B, C} и есть две Ф.З. А→В и А→С по т. Хеза R можно разбить на два отношения

R1:{A, B} и R2:{A, С}

R=R1 join R2

Данная декомпозиция определяется (подразумевается) атрибутам(и) А.

По определению зависимости соединения такое соединение является ограничением, т.к. R=AB join AC.

Для отношения {S, P, J} имеет место зависимость соединения *(SP, PJ, JS), но нельзя указать атрибут(ы), которые определяют разбиение на SP, PJ, JS соединения *(SP, PJ, JS).

Аномалии такого отношения: пусть есть состояние:

S P J
S1 P1 J2
S1 P2 J1

Добавим кортеж (S2, P1, J1) есть (S1, P1, J2) и (S2, P1, J1) и (S1, P2, J1) тогда должен быть кортеж (S1, P1, J1) т.е. его так же необходимо вставить. Если вставить (S1, P1, J1), то добавить (S2, P1, J1) не нужно.

S P J
S1 P1 J2
S1 P2 J1
S2 P1 J1
S1 P1 J1

Если удалить (S2, P1, J1) то побочных эффектов нет.

Но если удалить (S1, P1, J1), то необходимо удалить и один из основных 3 х кортежей, чтобы разорвать циклическое ограничение.

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

{K, X1, X2, …Xn}=>K→X1, K→X2, … K→Xn, где K – потенциальный ключ.

Пусть дано отношение {K, X1, X2, …Xn}, где К – потенциальный ключ, X1, X2, …Xn – прочие атрибуты.

Очевидно имеет место K→X1, K→X2, … K→Xn (ФЗ)

По т. Хеза имеет место *(КX1, КX2, …КXn).

Фейгин предложил алгоритм, с помощью которого для заданной зависимости соединения и множества потенциальных ключей проверить, определяется ли данная зависимость соединения данными потенциальными ключами. Но для этого необходимо знать зависимое соединение и множество потенциальных ключей. Обнаружить все зависимости соединения очень сложно. Следовательно, процесс определения находится отношение в 4НФ или 5НФ до конца не определен, но из практики такие отношения очень редкие.

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

В отношении {S, P, J} есть зависимость соединения *(SP, PJ, JS), но она не определяется потенциальными ключами => необходима декомпозиция. Каждая из проекций

Пример: SP может содержать кроме ключа SP другие атрибуты и т.е. может быть подвергнута декомпозиции, но смысла в такой декомпозиции нет, т.к. каждое полученное отношение содержит один и тот же потенциальный ключ (нет ни каких преимуществ).

 


<== предыдущая лекция | следующая лекция ==>
Лекция №18 | Лекция №19
Поделиться с друзьями:


Дата добавления: 2014-01-05; Просмотров: 905; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.