Перехід до нормалізаційних форм

Автор: Пользователь скрыл имя, 06 Марта 2013 в 20:12, реферат

Описание работы

Нормалізація схеми бази даних — покроковий процес розбиття одного відношення (на практиці: таблиці) відповідно до алгоритму нормалізації на декілька відношень на базіфункціональних залежностей.
Нормальна форма — властивість відношення в реляційної моделі даних, що характеризує його з точки зору надмірності, яка потенційно може призвести до логічно помилкових результатів вибірки або зміни даних. Нормальна форма визначається як сукупність вимог, яким має задовольняти відношення.
Таким чином, схема реляційної бази даних переходить у першу, другу, третю і так далі нормальні форми. Якщо відношення відповідає критеріям нормальної форми n, та всіх попередніх нормальних форм, тоді вважається, що це відношення знаходиться у нормальній формі рівня n.

Работа содержит 1 файл

referat.docx

— 52.02 Кб (Скачать)

Кожний кортеж відношення зв'язує деякий проект із співробітником, які беруть у цьому проекті, і  з завданням, котре співробітник виконує в рамках даного проекту (припускаємо, що будь-який співробітник, який бере участь у проекті, виконує  всі завдання, передбачені цим  проектом). Через сформульовані вище умови єдиним можливим ключем відношення є складовий атрибут ПРОЕКТ НОМЕР, ПРОЕКТ СПІВРОБ, ПРОЕКТ ЗАВДАННЯ, і  немає ніяких інших детермінантів. Отже, відношення ПРОЕКТИ знаходиться  в БКНФ. Але при цьому воно має  аномалії: якщо, наприклад, деякий співробітник приєднується до даного проекту, необхідно  вставити у відношення ПРОЕКТИ стільки  кортежів, скільки завдань у ньому  передбачено.

У відношенні R (A, B, C) існує  багатозначна залежність (multi-valued dependence - MVD) R. A R. B в тому і тільки в тому випадку, якщо множина значень B, що відповідає парі значень A і C, залежить тільки від A і не залежить від С.

У відношенні ПРОЕКТИ існують  наступні дві багатозначні залежності:

ПРОЕКТ НОМЕР ПРОЕКТ СПІВРОБ

ПРОЕКТ НОМЕР ПРОЕКТУ  ЗАВДАННЯ .

Неважко показати, що в загальному випадку у відношенні R (A, B, C) існує  багатозначна залежність A B у тому і  тільки в тому випадку, коли існує  багатозначна залежність A C.

Відношення R знаходиться  в четвертій нормальній формі (4НФ) у тому і тільки в тому випадку, якщо у випадку існування багатозначної  залежності A B всі інші атрибути R функціонально  залежать від A.

У нашому прикладі можна  виконати декомпозицію відношення ПРОЕКТИ  на два відношення

ПРОЕКТИ-СПІВРОБІТ і ПРОЕКТИ-ЗАВДАННЯ:

ПРОЕКТИ-СПІВРОБІТ ( ПРОЕКТ НОМЕР, ПРОЕКТ СПІВРОБІТ)

ПРОЕКТИ-ЗАВДАННЯ ( ПРОЕКТ НОМЕР, ПРОЕКТ ЗАВДАННЯ).

Обидва ці відношення знаходяться  в 4НФ .

Розглянемо ще один приклад.

Нехай задано відношення

R (СТУДЕНТ, ТОВАРИСТВО, СУСПІЛЬНА  РОБОТА, РІК).

Атрибут ТОВАРИСТВО визначає назву товариств, членом яких є студент; атрибути СУСПІЛЬНА РОБОТА І РІК - найменування суспільних доручень, виконуваних  студентом, і рік їх призначення. Передбачається, що те саме суспільне  навантаження не може бути призначена двічі протягом одного року тому самому студенту, але заміна одного навантаження на інше протягом року допускаються. У  табл. 4.16 приведений фрагмент відношення .

Таблиця 4.16. Приклад відношення з нетривіальними залежностями 

Виділимо нетривіальні багатозначні залежності:

СТУДЕНТ ТОВАРИСТВО,

СТУДЕНТ (СУСПІЛЬНА_РОБОТА, РІК) .

Вважаємо, що атрибут ТОВАРИСТВО не залежить від того, яку суспільну  роботу веде студент. Атрибути СУСПІЛЬНА  РОБОТА і РІК взаємозалежні.

Наявність подібних нетривіальних  багатозначних залежностей у  схемі одного відношення і незалежність їхніх правих частин в остаточному  підсумку приводять до комбінації значень  правих частин, що ілюструється в табл. 4.16. Відомості про те, що студент  Іванов є старостою групи у 1999 р. повторюються двічі в силу того, що він є членом двох товариств (ВТВР, ДТСААФ). Для студента Петрова в  зв'язку зі зміною суспільної роботи (1999 - 2000 р.) доводиться вводити додаткові  кортежі, у яких буде повторюватися  інформація про членство студента в  товариствах ВТВР і ДТСААФ.

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

Таблиця 4.17 Приклад відношення в четвертій нормальній формі

Таблиця 4.18.

Приклад відношення четвертій  нормальній формі 

В усіх розглянутих до цього  часу нормалізаціях здійснювалась  декомпозиція одного відношення на два. Іноді це зробити не вдається, але  можлива декомпозиція в більше число  відношень, кожне з який має кращі  властивості.

Розглянемо, наприклад, відношення

СПІВРОБІТНИКИ-ВІДДІЛИ-ПРОЕКТИ(СПІВРОБ  НОМЕР,

ВІДДІЛУ НОМЕР, ПРОЕКТУ НОМЕР) .

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

Тому відношення знаходиться  в 4НФ. Однак у ньому можуть існувати аномалії, які можна усунути шляхом декомпозиції на три відношення.

Відношення R (X, Y, ... , Z) задовольняє  залежності з'єднання * (X, Y, ... , Z) у тому і тільки в тому випадку, коли R відновлюється  без втрат шляхом з'єднання своїх  проекцій на X, Y, ... , Z.

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

Введемо наступні імена складових  атрибутів:

З = {СПІВРОБ_НОМЕР, ВІДДІЛУ_НОМЕР}

СП = { СПІВРОБ _НОМЕР, ПРОЕКТУ_НОМЕР}

ВП = {ВІДДІЛУ_НОМЕР, ПРОЕКТУ_НОМЕР}.

Припустимо, що у відношенні СПІВРОБІТНИКИ-ВІДДІЛИ-ПРОЕКТИ існує  залежність з'єднання: * (З, СП, ОП)

На прикладах можна  легко показати, що при вставках і видаленнях кортежів можуть виникнути  проблема. Їх можна усунути шляхом декомпозиції вихідного відношення на три нових відношення:

СПІВРОБІТНИКИ-ВІДДІЛИ (СПІВРОБ_НОМЕР, ВІДДІЛУ_НОМЕР)

СОТРУДНИКИ-ПРОЕКТИ (СПІВРОБ_ НОМЕР, ПРОЕКТУ_НОМЕР)

ВІДДІЛИ-ПРОЕКТИ (ВІДДІЛУ  НОМЕР, ПРОЕКТУ НОМЕР).

П'ята нормальна форма - це остання нормальна форма, яку  можна одержати шляхом декомпозиції

На закінчення приведемо  послідовність етапів нормалізації:

1. Перехід від структурної  моделі даних до плоских двовимірних  відношень (таблицям).

2. Усунення всіх неповних  залежностей атрибутів, які не  є основними, від усіх ймовірних  ключів.

3. Усунення всіх транзитивних  залежностей атрибутів, які не  є основними, від усіх ймовірних  ключів.

4. Усунення всіх нетривіальних  багатозначних залежностей атрибутів,  які не є основними, від усіх  ймовірних ключів.

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Нормалізація  схеми бази даних — покроковий процес розбиття одного відношення (на практиці: таблиці) відповідно до алгоритму нормалізації на декілька відношень на базіфункціональних залежностей.

Нормальна форма — властивість відношення в реляційної моделі даних, що характеризує його з точки зору надмірності, яка потенційно може призвести до логічно помилкових результатів вибірки або зміни даних. Нормальна форма визначається як сукупність вимог, яким має задовольняти відношення.

Таким чином, схема реляційної бази даних переходить у першу, другу, третю і так далі нормальні форми. Якщо відношення відповідає критеріям нормальної форми n, та всіх попередніх нормальних форм, тоді вважається, що це відношення знаходиться у нормальній формі рівня n.

Нормальні форми

Перша нормальна  форма

Перша нормальна  форма (1НФ, 1NF) утворює ґрунт для структурованої схеми баз даних:

  • Кожна таблиця повинна мати основний ключ: мінімальний набір колонок, які ідентифікують запис.
  • Уникнення повторень груп (категорії даних, що можуть зустрічатись різну кількість раз в різних записах) правильно визначаючи не-ключові атрибути.
  • Атомарність: кожен атрибут повинен мати лише одне значення, а не множину значень.

Друга нормальна  форма

Друга нормальна  форма (2НФ, 2NF) вимагає, аби дані, що зберігаються в таблицях із композитним ключем не залежали лише від частини ключа:

  • Схема бази даних повинна відповідати вимогам першої нормальної форми.
  • Дані, що повторно з'являються в декількох колонках виносяться в окремі таблиці.

Третя нормальна  форма

Третя нормальна  форма (3НФ, 3NF) вимагає, аби дані в таблиці залежали винятково від основного ключа:

  • Схема бази даних повинна відповідати всім вимогам другої нормальної форми.
  • Будь-яке поле, що залежить від основного ключа та від будь-якого іншого поля, має виноситись в окрему таблицю.

Нормальна форма  Бойса — Кодда

Відношення знаходиться  в НФБК, тоді і лише тоді коли детермінант кожної функціональної залежності є потенційним ключем. Якщо це правило не виконується, тоді щоб привести вказане відношення до НФБК його слід розділити на два відношення шляхом двох операцій проекції на кожну функціональну залежність детермінант, якої не є потенційним ключем.[Джерело?]

  1. Проекція без атрибутів залежної частини такої функціональної залежності;
  2. Проекція на всі атрибути цієї функціональної залежності.

Визначення НФБК не потребує жодних умов попередніх нормальних форм. Якщо проводити нормалізацію послідовно, то в переважній більшості випадків при досягненні 3НФ автоматично будуть задовольнятися вимоги НФБК. 3НФ не збігається з НФБК лише тоді, коли одночасно  виконуються такі 3 умови:[Джерело?]

  1. Відношення має 2 або більше потенційних ключів.
  2. Ці потенційні ключі складені (містять більш ніж один атрибут)
  3. Ці потенційні ключі перекриваються, тобто мають щонайменше один спільний атрибут.

Четверта нормальна  форма

Четверта  нормальна форма (4НФ, 4NF) вимагає, аби в схемі баз даних не було нетривіальних багатозначних залежностей множин атрибутів від будь чого, окрім надмножини ключа-кандидата. Вважається, що таблиця знаходиться у 4НФ тоді, і тільки тоді, коли вона знаходиться в НФБК, та багатозначні залежності є функціональними залежностями. Четверта нормальна форма усуває небажані структури даних — багатозначні залежності.

П'ята нормальна  форма

П'ята нормальна  форма (5НФ, 5NF, PJ/NF) вимагає, аби не було не тривіальних залежностей об'єднання, котрі б не витікали із обмежень ключів. Вважається, що таблиця в п'ятій нормальній формі, тоді, і тільки тоді, коли вона знаходиться в 4НФ, та кожна залежність об'єднання зумовлена її ключами-кандидатами.

Нормальна форма  домен/ключ

Ця нормальна форма  вимагає, аби в схемі не було інших  обмежень окрім ключів та доменів.

Шоста нормальна  форма

Таблиця знаходиться у 6NF, якщо вона знаходиться у 5NF та задовольняє  вимозі відсутності нетривіальних  залежностей. Зазвичай 6NF ототожнюють  з DKNF.


Информация о работе Перехід до нормалізаційних форм