Студопедия

КАТЕГОРИИ:


Архитектура-(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)

Описание формального алгоритма приведения отношений к третьей нормальной форме




Рассмотрим формальный алгоритм приведения отношений к третьей нормальной форме на примере отношения, имеющего шесть атрибутов и восемь кортежей с определенными значениями. Будем считать, что все особенности семантических функциональных зависимостей этого отношения учтены и отображаются в значениях полей атрибутов. Чтобы подчеркнуть, что имена атрибутов для формального алгоритма не существенны, будем называть их номерами и вынесем их в отдельную строку отношения. На рисунке 2.12 показано такое отношение R.

           
           

Рисунок 2.12 – Пример описания отношения R для демонстрации формального алгоритма приведения к третьей нормальной форме

Используя метод классификации, по каждому отдельному столбцу исходное отношение преобразуем к виду, описанному на рисунке 2.13. Метод классификации состоит в замене значений каждого поля столбца на меньшие значения, начиная с единицы. Это позволяет визуально проще выполнять анализ на уникальные значения или наличие функциональных зависимостей между атрибутами.

 

 

           
           

 

Рисунок 2.13 – Вид отношения R после применения метода классификации

 

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

Для этого определяем по значениям отдельных атрибутов (столбцов) или совокупности атрибутов (столбцов) наличие таких атрибутов, у которых все значения не повторяются, то есть уникальные в пределах атрибута отношения. Как видно из рисунка 2.13 такими ключевыми атрибутами являются следующие атомарные и составные ключи.

Ключи: <5>,<1,4>,<2,4>,<3,4>,<4,6>.

 

Так как в отношении имеются составные ключи, то возможно это отношение не находится во второй нормальной форме. Начиная с первого составного ключа проверяем наличие частичных функциональных зависимостей. У составного ключа <1,4> имеются две части – атрибуты 1 и 4. От части ключа могут зависеть атрибуты, не являющиеся ключами и не входящие с данным атрибутом в ключ для оставшихся составных ключей. Анализ наличия функциональной зависимости от атрибута 1 нужно выполнить для атрибутов 2,3,6. Определение функциональной зависимости дано в пункте 1.4. Как видно от атрибута 1 функционально зависят 3 и 6: 1→3, 1→6. Раз имеются зависимости от части ключа, то отношение не находится во второй нормальной форме. После приведения к 2НФ по правилу, получим два отношения R1(1,3,6) и R2(1,2,4,5). Оба этих отношения показаны на рисунке 2.14. Следует заметить, что повторяющиеся кортежи удалены, это необходимо сделать, так как по определению, в отношении не допускаются одинаковые кортежи.

После этого шага для каждого из полученных отношений алгоритм повторяется, начиная с определения ключевых атрибутов. Сначала рассмотрим отношение R1. В этом отношении имеется один атомарный ключ <1>. Так как отсутствуют составные ключи, то отношение находится во второй нормальной форме. Выполним анализ на третью нормальную форму. В данном случае ключевой атрибут A это атрибут <1>. Для этого отношения выполняются соотношения: 1→3, 3→6, 6 -/->1, 6-/->3, 3-/->1.

 

 

R1(1,3,6) R(1,2,4,5)

 

     
     
       
       

 

 

Рисунок 2.14 – После приведения ко второй нормальной форме отношения R

 

Наличие перечисленных функциональных зависимостей показывает, что в отношении имеется транзитивная зависимость атрибутов, не являющихся ключом, от ключа и, значит, отношение не находится в третьей нормальной форме. Применение правила нормализации для третьей нормальной формы приводит к возникновению двух отношенийR3 и R4 со следующими схемами R3(3,6), R4(1,3), показанными на рисунке 2.15.

R3(3,6) R4(1,3)

   
   

 

   
   

 

 

Рисунок 2.15 – Схемы отношений после нормализации отношения R1

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

Теперь проверим на наличие нормальных форм отношение R2(1,2,4,5). В этом отношении имеется следующий состав ключей: <5>,<1,4>,<2,4>. При определении состава ключей в данном случае, когда после нормализации не удалялись кортежи отношения, можно не анализировать значения атрибутов отношения, а оставить из списка ключевых атрибутов отношения R те ключи, которые состоят из атрибутов отношения R4. Аналогично рассуждаем, как и для отношения R, так как в отношении R4 имеются составные ключи, то проверяем его на наличие второй нормальной формы, анализируя по порядку ключ <1,4>. Анализ наличия функциональных зависимостей от части ключа 1 была выполнена ранее. Выполняем анализ наличия функциональных зависимостей атрибутов отношения R4 от части ключа 4. Таких зависимостей нет, так как атрибут 5 является атомарным ключом, а оставшиеся атрибуты отношения 1 и 2 входят с атрибутом 4 в составной ключ, отсюда также не могут от него зависеть. Осталось проанализировать составной ключ <2,4>, а более точно наличие зависимости от части ключа- атрибута 2. Анализируя отношение R4 видим, что такая зависимость есть: 2→1. Таким образом, наличие частичной зависимости показывает, что отношение R4 не находится во второй нормальной форме. В результате его нормализации получим два отношения: R5(1,2) и R6(2,4,5). На рисунке 2.16 показаны отношения R5 и R6.

 

R5(1,2) R6(2,4,5)

 

   
   
     
     

 

 

Рисунок 2.16 – Отношения R5 и R6 после нормализации отношения R2

 

Полученные отношения R5 и R6 находятся в третьей нормальной форме. Отношение R5 имеет только два атрибута, а в отношении R6 все атрибуты либо являются первичными ключами, либо входят в составной ключ. Таким образом, в результате применения описанного алгоритма нормализации исходного отношения R получена совокупность следующих схем отношений, находящихся в третьей нормальной форме: R3(3,6), R4(1,3), R5(1,2), R6(2,4,5).

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




Поделиться с друзьями:


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


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



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




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