- •Лекция№10 Нормализация реляционных баз данных
- •Цель нормализации
- •Функциональные зависимости
- •Процесс нормализации
- •Вторая нормальная форма (2нф)
- •Третья нормальная форма (знф)
- •Нормальная форма Бойса-Кодда (нфбк)
- •Четвертая нормальная форма (4нф)
- •Пятая нормальная форма (5нф)
- •Определение пятой нормальной формы (5нф)
Лекция№10 Нормализация реляционных баз данных
При проектировании базы данных в реляционной СУБД основной целью разработки логической модели данных является создание точного представления данных, связей между ними и требуемых ограничений. Для этого необходимо определить, прежде всего, подходящий набор отношений. Метод, используемый при этом, называется нормализацией (normalization). Нормализация представляет собой вариант восходящего подхода к проектированию базы данных, который начинается с установления связей между атрибутами.
Цель нормализации
Нормализация - метод создания набора отношений с заданными свойствами на основе требований к данным, установленным в некоторой организации.
Нормализация часто выполняется в виде последовательности тестов для некоторого отношения с целью проверки его соответствия (или несоответствия) требованиям заданной нормальной формы.
Процесс нормализации является формальным методом, который позволяет идентифицировать отношения на основе их первичных ключей (или потенциальных ключей, как в случае НФБК) и функциональных зависимостей, существующих между их атрибутов. Проектировщики баз данных могут использовать нормализацию в виде наборов тестов, применяемых к отдельным отношениям с целью нормализации реляционной схемы до заданной конкретной формы, что позволит предотвратить возможное возникновение аномалий обновления.
Основная цель проектирования реляционной базы данных заключается в группировании атрибутов и отношения так, чтобы минимизировать избыточность данных и таким образом сократить объем памяти, необходимый для физического хранения отношений, представленных в виде таблиц.
Функциональные зависимости
Функциональная зависимость описывает связь между атрибутами и является одним из основных понятий нормализации. В этом разделе приводится определение данного понятия, а в следующих — описание его взаимосвязи с процессами нормализации отношений базы данных.
Функциональная зависимость - описывает связь между атрибутами отношения. Например, если в отношении. R, содержащем атрибуты А и В, атрибут В функционально зависит от атрибута А (что обозначается как АВ), то каждое значение атрибута А связано только с одним значением атрибута В. (Причем каждый из атрибутов А и В может состоять из одного или нескольких атрибутов.)
Функциональная зависимость является смысловым (или семантическим) свойством атрибутов отношения. Семантика отношения указывает, как его атрибуты могут быть связаны друг с другом, а также определяет функциональные зависимости между атрибутами в виде ограничений, наложенных на некоторые атрибуты.
Зависимость между атрибутами А и В можно схематически представить в виде диаграммы, показанной на рисунке 5.
Детерминант - детерминантом функциональной зависимости называется атрибут или группа атрибутов, расположенная на диаграмме функциональной зависимости слева от символа стрелки.
А |
Атрибут В функционально зависит от атрибута А |
В |
Рисунок 5 - Диаграмма функциональной зависимости
При наличии функциональной зависимости атрибут или группа атрибутов, расположенная на ее диаграмме слева от символа стрелки, называется детерминантом (determinant). Например, на рис. 6.1 атрибут А является детерминантом атрибута В.
Концепция функциональной зависимости является центральным понятием процесса нормализации.