Нормалізація запобігає втраті дискового простору шляхом мінімізації або усунення надмірності.
Діаграма порівняння
Основа для порівняння | Нормалізація | Денормалізація |
---|---|---|
Основний | Нормалізація - це процес створення встановленої схеми для зберігання невиправданих і послідовних даних. | Денормалізація - це процес об'єднання даних, щоб його можна було швидко запитувати. |
Призначення | Для зниження даних надмірність і невідповідність. | Для досягнення більш швидкого виконання запитів шляхом введення надмірності. |
Використовується в | Система OLTP, в якій акцент робиться на те, щоб аномалії вставки, видалення та оновлення були більш швидкими та зберігали якісні дані. | Система OLAP, де наголос робиться на швидшому пошуку та аналізі. |
Цілісність даних | Підтримується | Може не зберегти |
Надмірність | Скасовано | Додано |
Кількість таблиць | Збільшується | Зменшується |
Дисковий простір | Оптимізовано використання | Витрати |
Визначення нормалізації
Нормалізація - це метод організації даних в базі даних ефективно. Вона передбачає побудову таблиць і встановлення взаємозв'язків між цими таблицями згідно з деякими певними правилами. Надмірність і непослідовність залежностей можуть бути видалені за допомогою цих правил, щоб зробити її більш гнучкою.
Надлишкові дані витрачають дисковий простір, збільшують невідповідність даних і сповільнюють запити DML. Якщо однакові дані присутні в більш ніж одному місці, і будь-яке оновлення здійснюється на цих даних, то зміна повинна бути відображена у всіх місцях. Непослідовні дані можуть зробити пошук даних і доступ важче, втративши шлях до нього.
Існують різні причини, за якими виконується нормалізація, наприклад, щоб уникнути надмірності, оновлення аномалій, непотрібного кодування, збереження даних у формі, яка може легше і точніше змінювати зміни і забезпечувати обмеження даних.
Нормалізація включає аналіз функціональних залежностей між атрибутами. Співвідношення (таблиці) розкладаються з аномаліями для створення відносин зі структурою. Це допомагає вирішити, які атрибути повинні бути згруповані у відношенні.
Нормалізація в основному базується на поняттях нормальних форм . Таблицю співвідношень називають нормальною, якщо вона виконує певний набір обмежень. Є 6 визначених нормальних форм: 1NF, 2NF, 3NF, BCNF, 4NF і 5NF. Нормалізація повинна усунути надмірність, але не ціною цілісності.
Визначення денормалізації
Денормалізація є зворотним процесом нормалізації, де нормалізована схема перетворюється в схему, яка має надлишкову інформацію. Продуктивність поліпшується за допомогою надмірності та послідовного збереження надлишкових даних. Причиною здійснення денормалізації є накладні витрати, що виробляються в процесорі запитів за допомогою наднормалізованої структури.
Денормалізація також може бути визначена як метод зберігання сполук вищої нормальної форми відносин як базового відношення, яке знаходиться в нижній нормальній формі. Це зменшує кількість таблиць, а складні приєднання таблиці, оскільки більша кількість об'єднань може сповільнити процес. Існують різні методи денормалізації, такі як: збереження значень, що підлягають видобутку, попередніх об'єднань таблиць, жорстко закодованих значень і збереження деталей з майстром тощо.
Тут підхід до денормалізації підкреслює концепцію, що, розмістивши всі дані в одному місці, можна було б усунути необхідність пошуку цих декількох файлів для збору цих даних. Основна стратегія, що слідує за денормалізацією, полягає в тому, що найбільш правильний процес обраний для вивчення тих модифікацій, які в кінцевому рахунку покращать продуктивність. І найголовнішою зміною є те, що додавання декількох атрибутів до існуючої таблиці для зменшення кількості об'єднань.
Ключові відмінності між нормалізацією та денормалізацією
- Нормалізація - це методика поділу даних на кілька таблиць, щоб зменшити надмірність даних і невідповідність даних і досягти цілісності даних. З іншого боку, денормалізація - це метод об'єднання даних в єдину таблицю для швидшого отримання даних.
- Нормалізація використовується в системі OLTP, яка підкреслює, що аномалії вставки, видалення та оновлення швидше. На відміну від цього, денормалізація використовується в системі OLAP, яка підкреслює швидкість пошуку та аналізу.
- Цілісність даних зберігається в процесі нормалізації, тоді як в денормалізації цілісність даних важче зберігати.
- Надлишкові дані усуваються, коли виконується нормалізація, тоді як денормалізація збільшує надлишкові дані.
- Нормалізація збільшує кількість таблиць і об'єднань. На відміну від цього, денормалізація зменшує кількість таблиць і приєднується.
- Дисковий простір втрачається при денормалізації, оскільки ці дані зберігаються в різних місцях. Навпаки, дисковий простір оптимізований в нормалізованій таблиці.
Висновок
Нормалізація та денормалізація корисні відповідно до ситуації. Нормалізація використовується, коли необхідні швидкі аномалії вставки, видалення та оновлення, а також узгодженість даних. З іншого боку, денормалізація використовується, коли більш швидкий пошук є більш важливим і оптимізує продуктивність читання. Це також зменшує накладні витрати, створені за допомогою перевищення нормованих даних або складних об'єднань таблиць.