Ім'я файлу: лекція14.doc
Розширення: doc
Розмір: 319кб.
Дата: 07.12.2020
скачати
Пов'язані файли:
Кислотно основна рівновага.doc

Лекція 14

Тема лекції:
Логічне проектування. Нормальні форми.
План лекції

  1. Логічне проектування: структура та послідовність виконання.

  2. Аномалії при виконанні операцій у базі даних.

  3. Функціональні залежності. Декомпозиція без втрат.

  4. Визначення першої нормальної форми.

  5. Неповні функціональні залежності та друга нормальна форма.

  6. Транзитивні залежності й третя нормальна форма.

  7. Нормальна форма Бойса-Кодда.

  8. Багатозначні залежності.

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

  10. Залежності за з’єднанням, п’ята нормальна форма.

  11. Загальна процедура нормалізації.


Рекомендована література

  1. Гайна Г. А. Основи проектування баз даних: навчальний посібник. – К.: Кондор, 2008. – 200 с.

  2. Пасічник В. В., Резніченко В. А. Організація баз даних та знань. – К.: Видавнича група ВHV, 2006. – 384 с.

  3. Проектування інформаційних систем: Посібник \ За редакцією Пономаренка В. С. – К.: Видавничий центр «Академія», 2002. – 488 с.


Зміст лекції
1. Логічне проектування: структура та послідовність виконання.

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

Концептуальні моделі за певними правилами перетворюються в логічні моделі даних. Коректність логічних моделей перевіряється за допомогою правил нормалізації, які дозволяють переконатися в структурній узгодженості, логічній цілісності і мінімальній збитковості прийнятої моделі даних. Модель також перевіряється з метою виявлення можливостей виконання транзакцій, які будуть задаватися користувачами. Проектування являє собою циклічний процес. Етапи логічного проектування наведені на рис. 6.1.
Р
ис. 6.1. Етапи логічного проектування бази даних

  1. Аномалії при виконанні операцій у базі даних.

Аномаліями називається така ситуація в БД, яка призводить до протирічь у БД, або суттєво ускладнює обробку даних. Розрізняють аномалії модифікації, додавання і вилучення.

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

Студент



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

Аномалія додавання виникає при додаванні інформації про нового студента, при цьому необхідно вводити інформацію, яка вже є в БД: назва факультету, прізвище декана. Крім того неможливо створити нову групу поки не існує студентів, які в ній займаються.

Аномалія вилучення виникає при спробі вилучити дані про студента, який в групі поки ще один, наприклад Лемешко. В цьому випадку зникне інформація про групу ІУСТ-22. Виконання декомпозиції наведеного відношення дозволяє позбутися вищеозначених аномалій (табл. 7.2...7.4).

Студент



Таблиця 7.2

Група



Таблиця 7.3
Факультет



Таблиця 7.4

3. Функціональні залежності.

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

Декомпозиція без втрат даних.

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

У разі, коли потрібно здійснити декомпозицію відношення на більше, ніж два нових, можна застосовувати метод таблиці (в цьому методі використовується лише поняття функціональної залежності.

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

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

Приклад. Представлення даних у таблицях може вважатися як атомарним, так і неатомарним залежно від використання. Засіб представлення визначається необхідним ступенем деталізації і повинен підтримуватися у всіх застосуваннях (табл. 7.5).

Дата народження



Таблиця 7.5

5. Неповні функціональні залежності та друга нормальна форма.

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

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

Приклад. Розглянемо відношення Студент (табл. 7.6).
Студент



Таблиця 7.6
Функціональні залежності:

залік. кн., Дисципліна Прізвище, Група, Оцінка

залік. кн. → Прізвище, Група

Для приведення даного відношення до 2НФ необхідно розбити його на проекції, при цьому повинна бути виконана умова відновлення вихідного відношення без втрат. Проекції мають такий вигляд (табл. 7.7...7.8).
Студент



Таблиця 7.7

Група


Таблиця 7.8
Відсутність втрат при декомпозиції відношення R(x,y,z) на відношення R1(x,y) і R2(x,z) виконується, якщо від спільного атрибуту двох отриманих відношень (x) залежить хоча б один атрибут з двох, що залишилися (y або z), тобто якщо виконується (x y) або (x z).

6. Транзитивні залежності й третя нормальна форма.

Відношення знаходиться в 3НФ, якщо воно знаходиться в 2НФ і жоден з непервинних атрибутів у відношенні не є транзитивно залежним від первинного ключа. Атрибут C транзитивно залежить від атрибуту A, якщо для атрибутів A, B, C виконуються такі умови A B і B → C, але зворотня залежність відсутня.

Студент



Таблиця 7.9

Функціональні залежності:

залік. кн. → Прізвище, Група, Факультет

Група Факультет

Між атрибутами існує транзитивна залежність. Для того щоби запобігти цьому необхідно виконати декомпозицію відношення (табл. 7.10, 7.11):
Студент


Таблиця 7.10
Група



Таблиця 7.11
7. Нормальна форма Бойса-Кодда.

Відношення знаходиться в НФБК, якщо воно знаходиться в 3НФ і у ньому відсутні залежності атрибутів первинного ключа від неключових атрибутів.

Приклад. Розглянемо відношення Спеціальність (табл. 7.12).
Спеціальність



Таблиця 7.12
Припустимо, що на кожній спеціальності певну дисципліну може викладати тільки один викладач і кожен викладач викладає тільки одну дисципліну. У цьому випадку мають місце такі залежності:

Спеціальність, Дисципліна Викладач

Викладач Дисципліна

Відношення знаходиться в 3НФ, але неключовий атрибут Викладач визначає атрибут Дисципліна, що входить у ключ. Для того щоби позбутися аномалій необхідно виконати декомпозицію відношення (табл. 7.13, 7.14).

Спеціальність



Таблиця 7.13

Дисципліна



Таблиця 7.14
8. Багатозначні залежності.

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

Відношення R(A,B,C) можна розбити без втрат інформації на відношення R1(A,B) і R2(A,C) в тому і тільки в тому випадку, якщо існують багатозначні залежності A→→B і A→→C.

Приклад. Розглянемо відношення Кафедра (табл.7.15).

Кафедра



Таблиця 7.15

У даному відношенні існують дві багатозначні залежності:

Кафедра →→ Викладач

Кафедра →→ Група

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

Кафедра



Таблиця 7.16

Група



Таблиця 7.17
9. Четверта нормальна форма.

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

10. Залежності за з’єднанням, п’ята нормальна форма.

Відношення знаходиться в 5НФ тоді і тільки тоді, коли будь-яка залежність з'єднання у відношенні виходить з існування деякого можливого ключа у відношенні. Відношення R(X,Y,…,Z) задовольняє залежності з'єднання (X,Y,…,Z) тоді і тільки тоді, коли R відновлюється без втрат інформації шляхом з'єднання своїх проекцій на X, Y,…, Z. Залежність з'єднання є узагальненням функціональної і багатозначної залежностей.

Приклад. Розглянемо відношення Заняття: Заняття (Студент, Викладач, Дисципліна) Кожен студент слухає лекції багатьох викладачів, кожен викладач викладає для багатьох студентів, кожен студент вивчає багато дисциплін, кожен викладач викладає багато дисциплін. У відношенні відсутні багатозначні і функціональні залежності й воно знаходиться в 4НФ. У відношенні можливі аномалії, які пов'язані з повтором значень атрибутів в декількох кортежах. Наприклад, якщо студент навчається у багатьох викладачів, то при його відрахуванні з університету необхідно знайти і вилучити декілька записів з відношення. Утворимо такі складені атрибути відношення:

СВ (Студент, Викладач)

СД (Студент, Дисципліна)

ВД (Викладач, Дисципліна).

Якщо відношення R спроектувати на складені атрибути СВ, СД, ВД, то з'єднання цих проекцій дасть вихідне відношення. Це означає, що у відношенні Заняття існувала залежність з'єднання. Результатом декомпозиції відношення Заняття буде отримання таких відношень: R1(Студент, Викладач), R2(Студент, Дисципліна), R3(Викладач, Дисципліна). Для зведення вихідного відношення до 5НФ виконують його декомпозицію на відношення, кількість яких перевищує два.

11. Загальна процедура нормалізації.

1) Попередній етап. Формування вихідної двовимірної таблиці на основі аналізу предметної області.

2) Перетворення таблиці до 1НФ за рахунок приведення неатомарних атрибутів до атомарним і забезпечення унікальності імен атрибутів (виконання вимог реляційної моделі до реляційних відносинам).

3) Приведення до 2 НФ за рахунок проекцій на атрибути, що входять до часткові функціональні залежності.

4) Приведення до 3 НФ за рахунок проекції на атрибути, що є причиною транзитивних функціональних залежностей.

5) Приведення до БКНФ за рахунок проекції на атрибути, що входять у функціональні залежності, у яких детермінант не є потенційним ключем.

6) Приведення до 4НФ за рахунок проекції на атрибути, що входять до багатозначні, але не функціональні залежності.

7) Приведення до 5НФ за рахунок приведення до проекції з'єднання, що не містить N- дикомпозиційних відносин.





скачати

© Усі права захищені
написати до нас