МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
Кафедра ЕОМ
Оптимізація реляційних баз даних методом нормалізації
МЕТОДИЧНІ ВКАЗІВКИ
до лабораторної роботи № 7 з дисципліни
“ Організація баз даних ”
для студентів базового напрямку 6.0915
“Комп’ютерна інженерія”.
Львів - 2011
Методичні вказівки до лабораторної роботи № 7 “Оптимізація РБД методом нормалізації” з дисципліни "Організація баз даних" для студентів базового напрямку 6.0915 “Комп’ютерна інженерія” /Укл.: Карпін О.О., Морозов Ю.В. - Львів: Видавництво Національного університету “Львівська політехніка”, 2011.- 10 с.
Укладачі: Карпін О.О., канд. техн. наук., доц.
Морозов Ю.В., канд. техн. наук., доц.
Відповідальний за випуск Морозов Ю.В., канд. техн. наук., доц.
Рецензенти: Квурт Л.С., канд. техн. наук., доц.
Березко Л.О., канд. техн. наук., доц.
Лабораторна робота № 7
ОПТИМІЗАЦІЯ РБД МЕТОДОМ НОРМАЛІЗАЦІЇ
МЕТА РОБОТИ
Перевірити коректність створеної реляційної бази даних за методикою приведення її до 3NF (третя нормальна форма)
МЕТОДИЧНІ ВКАЗІВКИ
ОСНОВНІ ТЕОРЕТИЧНІ ВІДОМОСТІ
Проектування реляційних БД на основі принципів нормалізації
Чому проект БД може бути неякісним?
Розглянемо приклад відношення ПОСТАЧАЛЬНИК ( НАЗВ_ПОСТ, АДР_ПОСТ, ТОВАР, ЦІНА).
Навіть для такого відносно простого відносно простого відношення характерними будуть наступні недоліки:
1. Надлишковість. Адреса постачальника повторюється для кожного товару, що поставляється.
2. Аномалії оновлення. Ми поновлюємо адресу постачальника в якомусь одному кортежі , залишаючи його незмінним в інших ( це стосується заповнення однієї Т). Може статись, що для деяких постачальників нема єдиної адреси.
3. Аномалії включення. В БД не можна записати адресу постачальника, коли він у даний час не постачає хоча б один товар.
Можна, звичайно, записати невизначені Д в компоненти ТОВАР і ЦІНА кортежу для цього постачальника. Але чи не забудемо ми знищити кортеж з невизначеними товарами, коли постачальник посне завозити товар?
Більше того, ТОВАР на НАЗВ_ПОСТ можуть утворювати КЛЮЧ даного відношення, а пошук кортежів з невизначеними значеннями у ключі може бути важким чи неможливим.
4. Аномалії видалення. Зворотна проблема виникає при необхідності видалення всіх товарів, що поставляються даним постачальником, внаслідок чого ми втрачаємо його адресу.
В наведеному прикладі всі перераховані проблеми зникають, якщо замість наведеного відношення ПОСТАЧАЛЬНИКИ скористатись двома схемами відношень:
ПА ( НАЗВ_ПОСТ, АДР_ПОСТ)
ПТЦ (НАЗВ_ПОСТ, ТОВАР, ЦІНА)
Але в таких відношеннях залишаються невирішеними деякі питання. Наприклад, щоб знайти адресу постачальника, нам необхідно тепер будувати з’єднання, що є дорогою операцією ( в той час, як у першому відношенні можна було б просто виконати селекцію).
Завдання проектування РБД – знайти добру заміну для поганої схеми відношень.
КОРЕКТНОЮ називають схему БД, в якій відсутні небажані залежності між атрибутами відношень.
Процес розробки коректної схеми реляційної БД називають логічним проектуванням БД.
Класична технологія проектування РБД пов’язана із теорією нормалізації, що базується на аналізі функціональних залежностей між атрибутами відношень.
2. Види нормальних форм.
В теорії реляційних БД зазвичай виділяється наступна послідовність нормальних форм:
- перша нормальна форма (1NF);
- друга нормальна форма (2NF);
- третя нормальна форма (3NF);
- нормальна форма Бойса – Кодда (BCNF);
- четверта нормальна форма (4NF);
- п’ята нормальна форма або нормальна форма проекції – з’єднання (5NF або PJ/NF).
3. Основні властивості нормальних форм:
- кожна наступна NF в деякому смислі краща попередньої;
- при переході до наступної NF властивості попередніх NF зберігаються;
- кожній нормальній формі відповідає певний набір обмежень, які покладено у визначення кожної із форм.
1 NF
Відношення знаходиться в 1NF тоді і лише тоді, коли на перетині стовпця і кожного рядка є лише елементарні значення атрибутів (атоми).
Прилад невідповідності 1NF («Розклад»)(Відношення R)
Викладач
День тижня
Пара
Дисципліна
Тип занять
Група
Галембо В.А.
Понеділок
Середа
П’ятниця
1
3
1
ПТЦА
Захист інфор.
Захист інфор.
Лекція
Практика
Лабораторна
КІ-4
СКС-51
КСМ-51
Вітер Ю.С.
Вівторок
Вівторок
2
3
Технології
Технології
Лабораторна
Лабораторна
КІ-41
КІ-4
Тут на перетині стовпця і рядка знаходиться цілий набір елементарних значень (набір днів, набір пар, набір предметів, типів занять, набір груп).
Щоб довести до 1NF – кожен рядок доповнити прізвищем викладача:
Викладач
День тижня
Пара
Дисципліна
Тип занять
Група
Галембо В.А.
Понеділок
1
ПТЦА
Лекція
КІ-4
Галембо В.А.
Середа
3
Захист інфор.
Практика
СКС-51
Галембо В.А.
П’ятниця
1
Захист інфор.
Лабораторна
КСМ-51
Вітер Ю.С.
Вівторок
2
Технології
Лабораторна
КІ-41
Вітер Ю.С.
Вівторок
3
Технології
Лабораторна
КІ-4
2NF
Відношення R знаходиться у 2NF у тому і лише у тому випадк, коли знаходиться у 1NF і кожен не ключовий атрибут повністю залежить від первинного ключа.
Приклад:
Відношення ПА – відповідає 2NF.
ПТЦ – 1+і. Якщо ключ П, то ЦІНА не залежить від П.
3NF
Відношення R знаходиться у 3NF у тому і лише у тому випадку, якщо знаходиться у 2NF і кожен не ключовий атрибут НЕ є транзитивно залежним від якого небуть ключа R.
Транзитивність: Якщо А→В і В→С, то А→С.
Позначення : А→В читається: А функціонально визначає В чи В функціонально залежить від А.
На практиці 3NF схем відношень достатня у більшості випадків проектування БД, і приведенням до 3NF процес проектування реляційної БД зазвичай закінчується.
Крім того, практика показує, що швидкодія РБД зменшується (для деяких БД) із збільшення глибини нормалізації. І тоді приходиться відходити від такого процесу (обмеження – 3NF).
Приведення РБД до третьої нормальної форми із збереженням залежностей.
Вхідні дані:Схема відношень R і множина функціональних залежностей F(які ми без втрати спільності будемо рахувати мінімальними поняттям).
Вихідні дані: демонстрації відношення R,що зберігають залежності,такі ,що кожна складова схема відношення знаходяться в 3NF відносно проекції F на цю схему.
Метод.Якщо існує деякий атрибут в R,що виступає у лівій чи правій частині якої-небудь залежності із F,то цей атрибут може в принципі сам утворити деяку схему відношення,і його можна виключити із R.
Приклад
.Розглянемо схему відношення CTHRSG,де :
C – курс(дисципліна,предмет)
T – викладач
H – час
R – аудиторія
S – студент
G – оцінка
Допустимо, є наступні функціональні залежності :С→T – кожний курс веде один викладач.
HR→C – в аудиторії одночасно може читатись лише 1 предмет.
HT→R – викладач одночасно може знаходитись тільки в одній аудиторії
CS→G – кожен студент має оцінку з кожного курсу
HS→R - студент може знаходитись тільки в одній аудиторії одночасно.
Єдиний ключ – HS
Проведемо декомпозицію CTHRSG на CSG і CTHRS.
Для здійснення подальшої демонстрації необхідно вираховувати F+ і спроектувати його на CSG і CTHR.
F+ позначає замикання F – множину функціональних залежностей,які логічно слідують із F.Якщо F=F+,ми говоримо,що F – повне сімейство залежностей.
Цей процес зазвичай вимагає значного часу,оскільки розмір F+ вбирає всі тривіальні залежності(що виводяться за системою рефлексивності,ми не розлядали) і, крім залежностей із F,деякі інші нетривіальні залежності,наприклад:
CH→R,HS→C і HR→T
Після того,як отримаємо F+,вибираємо залежності, які залучаютьтільки C,S I G.Вони представляють собою множину залежностей F,спроектовану на CSG,Ця множина має мінімальне покриття,що складається лише із залежності CS→G.
Проектуємо також F+ на CTHRS.Множина,отримана в результаті проекції,має мінімальні покриття
C→T TH→R
HR→C HS→R
Єдиним ключем для CTHRS є HS
Схема відношення CTHRS повинна пройти подальшу декомпозицію.ми можемо вибрати залежність C→T,що приведе до розбивання схеми на CT:CHRS.Мінімальними покриттями для спроектованих залежностей є:
C→T для СТ, а також
CH→R,HS→R і HR→C для CHRS.
Для останньої схеми єдиним ключем є HS
На рис 5.6 показані 3 декомпозиції з ключами і мінімальним покриттям для множин спроектованих залежностей.
Рис 5.6. Дерево декомпозиції
C – курс(дисципліна,предмет)
T – викладач
H – час
R – аудиторія
S – студент
G – оцінка
Допустимо є наступні функції залежності:
С→T
HR→C
HT→R
CS→G
HS→R
6)Кінцева декомпозиція CTHRSG – сукупність схем CSG,CT,CHR і CHS.Це непоганий проект БД,оскільки чотири його схеми відношень представляють в виді таблиць відповідно:
1.Оцінки студентів з предметів
2.Викладачі кожного предмету.
3.Час занять з кожного курсу,аудиторію для даного заняття.
4.Розклад предметів для кожного студента.
P.S. Не всяка декомпозиція породжує схему БД,яка добре відповідає нашим інтуїтивним домислам про те,яка інформація повинна представлятися у вигляді таблиць.Якщо,наприклад,на останньому кроці декомпозиції використати замість CH→R залежність HR→C, то можна отримати схему HRS замість CHS.При цьому HRS представляла б аудиторію,в якій буде студент у заданий час, а не заняття, на якому він присутній.
Проблема декомпозиції (рис. 5.6): ця декомпозиція не зберігає залежність TH→R.По-іншому,із проекцій CSG,CT,CHR і CHS,яка може бути представлена покриттями:
CS→G HR→C
G→T HS→G
CH→R
що знайдені шляхом отримання мінімальних покриттів у кожному із листків(рис.5.6)не виводиться залежність TH→R.
При використанні алгоритма :якщо в одній із залежностей F приймають участь усі атрибути R,то вихідні Д утворює саме R.У противному випадку декомпозиція,що утворює вихідні Д,складається із схеми ХА для кожної залежності Х→А в F.Але якщо в F є залежності Х→А1, Х→А2,…, Х→АN,то може бути використано схема ХА1… АN,замість ХАі для 1<=i<=N,і така підстановка звичайно є переважаючою.
ЗАВДАННЯ
1) Для розробленої БД послідовно провести нормалізацію таблиць, починаючи з 1NF і завершуючи 3 NF.
2) На основі отриманих результатів провести порівняльні характеристики розробленої БД, вказати на шлях покращення якості БД та створення коректної бази.
3) Проведену роботу відобразити у звіті, та захистити його.
ЗМІСТ ЗВІТУ
Опис проведених робіт.
Загальний опис усієї створеної за семестр інформаційної системи.
НАВЧАЛЬНО-МЕТОДИЧНІ МАТЕРІАЛИ
Гринберг Ф., Гринберг Р. Самоучитель программирования на входом языке СУБД. – М.: Мир, 1989.- 453 с.
OpenOffice v. 2.0. Описание системы и руководство программиста. Техническая документация. 1500 с.
Крамм Р. Системы управления базами данных для персональных компьютеров. – М., Финансы и статистика, 1988.- 383 с.
ЗМІСТ
Оптимізація РБД методом нормалізації 3
Мета роботи 3
Методичні вказівки 3
Основні теоретичні відомості 3
Завдання 7
Зміст звіту 7
Навчально-методичні матеріали 8
НАВЧАЛЬНЕ ВИДАННЯ
МЕТОДИЧНІ ВКАЗІВКИ
лабораторної роботи № 7
«Оптимізація РБД методом нормалізації” з дисципліни»
з дисципліни
"Організація баз даних "
для студентів напрямку
“Комп’ютерна інженерія”
Укладачі Карпін Олександр Олександрович
Морозов Юрій Васильович
Редактор
Комп’ютерне складання
Підписано до друку
Формат 70 х 100 1/16. Папір офсетний.
Друк на різографі. Умовн. друк. арк. ...... Обл.-вид. арк. ......
Наклад 15 прим. Зам. №
Поліграфічний центр
Видавництва Національного університету “Львівська політехніка”
вул. Колесси, 2, 79000, Львів