23.Нормалізація відношень. Необхідність нормалізації.
Нормалізація - метод створення набору відношень із заданими властивостями на основі вимог до даних, встановлених в деякій організації.
Процес нормалізації був вперше запропонований Коддом. Нормалізація часто виконується у вигляді послідовності тестів з метою перевірки відповідності (або невідповідності) деякого відношення вимогам заданої нормальної форми. Спочатку були запропоновані лише три види нормальних форм: перша (1НФ), друга (2НФ) і третя (ЗНФ). Потім Р. Бойсом і Н.Ф. Коддом було сформульовано більш суворе визначення третьої нормальної форми, яке отримало назву нормальної форми Бойса-Кодда (НФБК). Всі ці нормальні форми базуються на функціональних залежностях, що існують між атрибутами відношень. Нормальні форми більш високого порядку, які перевершують НФБК, були введені пізніше. До них відносяться четверта (4НФ) і п'ята (5НФ) нормальні форми.
Відношення представляються як складові з деякої кількості атрибутів, а реакційна схема - з деякої кількості відношень. Атрибути можуть ірупуватися у відношення з утворенням реляційної схеми на основі або власного досвіду розробника бази даних, або за допомогою виведення реляційної схеми з розробленої HR-діаграми. При використанні будь-якого з цих двох підходів часто потрібно застосовувати певний формальний метод, здатний допомогти проектувальнику бази даних знайти оптимальне групування атрибутів для кожного відношення у схемі.
Процес нормалізації є формальним методом, що дозволяє визначати відношення на основі їх первинних або потенційних ключів і функціональних залежностей, що існують між їх атрибутами. Проектувальники баз даних можуть використовувати нормалізацію у вигляді наборів тестів, що застосовуються до окремих відношень з метою нормалізації реляційної схеми до заданої конкретної форми, що дозволить запобігти можливому виникненню аномалій оновлення.
Нормалізація - це формальний метод аналізу відношень на основі їх первинного ключа (або потенційних ключів) та існуючих функціональних залежностей. Він включає ряд правил, які можуть використовуватися для перевірки окремих відношень таким чином, щоб вся база даних могла бути нормалізована до бажаного ступеня. Якщо деяка вимога не задовольняється, то відношення, що суперечить даній вимозі має бути розділене на відношення, кожне з яких (окремо), задовольняє всім вимогам нормалізації.
Найчастіше нормалізація здійснюється у вигляді декількох послідовно виконуваних етанів, кожен з яких відповідає певній нормальній формі, що має відомі властивості. У ході нормалізації формат відношень стає все більш обмеженим (суворим) і менш сприйнятливим до аномалій оновлення.
При роботі з реляційної моделлю даних важливо розуміти, що для створення відношень прийнятної якості обов'язково тільки виконання вимог першої нормальної форми (1НФ). Всі інші форми можуть використовуватися за бажанням проектувальників.
Основними принципами нормалізації є:
усі атрибути відношення повинні бути атомарними, тобто неподільними;
усі рядки таблиці повинні мати однакову структуру, тобто мати одну й ту саму кількість атрибутів з іменами, що відповідно збігаються;
імена стовпців мають бути різними, а значення однорідними (мати однаковий формат);
порядок рядків у таблиці неістотний;
в кожній таблиці не повинно бути дублювання полів;
в кожній таблиці повинен бути унікальний ідентифікатор (первинний ключ);
кожному значенню первинного ключа повинна відповідати достатня інформація про тип сутності або про об'єкт таблиці (наприклад, інформація про успішність, про групу або студентів);
зміна значень в полях таблиці не повинна впливати на інформацію в інших полях (крім змін у полях ключа).
Таким чином , нормалізація відношень усуває між атрибутами такі залежності: неповні функціональні, транзитивні, нетривіальні (незалежні) багатозначні. Усуваючи ці залежності, виключаємо дублювання даних і можливість виникнення аномалій при виконанні операцій поповнення, заміни та вилучення даних з БД. Крім того, нормалізована база даних вимагає значно менше пам’яті для її зберігання, ніж ненормалізована база даних.
- Передумови виникнення програмної інженерії.
- Основні принципи програмної інженерії.
- Життєвий цикл програмного забезпечення.
- Роль і місце інформаційної інженерії у програмній.
- Призначення і основні компоненти середовища бази даних.
- 7. Системи управління базами даних (субд).
- 8. Реляційна модель даних
- 9. Мова маніпулювання даними для реляційної моделі.
- 10.Умови і обмеження, які накладаються на відношення реляційною
- 11. Переваги реляційної бази даних
- 12. Життєвий цикл інформаційної системи
- Життєвий цикл програмного забезпечення баз даних
- 13. Мета і задачі проектування
- 14. Проектування реляційної бази даних
- Етапи проектування бази даних
- 15. Формулювання та аналіз вимог
- 16.Концептуальне проектування.
- 17.Модель "сутність-зв'язок".
- 18.Критерії вибору первинного ключа.
- 19.Логічне проектування.
- 20.Індексація в базах даних.
- 21.Методи доступу до файлів і хешування.
- 22.Цілісність і схоронність баз даних.
- 23.Нормалізація відношень. Необхідність нормалізації.
- 24. Аномалії додавання, вилучення і обновлення баз даних.
- 25.Явна і неявна надлишковість даних. Декомпозиція відношень.
- 26.Поняття нормальної форми. 1-а, 2-а, 3-я, 4-а нормальні форми. Нормальна форма Бойса-Кодда.
- 27.Реляційна алгебра. Основні і додаткові операції реляційної алгебри.
- 28.Представлення в базах даних.
- 29.Привілеї в базах даних.
- 30.Ієрархічна модель даних.
- 31.Мережева модель даних.
- 32. Багатовимірна модель даних. Olap.
- 33.Case-засоби проектування баз даних. Можливості проектування баз