double arrow

Процесс нормализации. Функциональная и многозначная зависимости

Функциональная и многозначная зависимости

Теория нормализации основывается на наличии той или иной зависимости между столбцами таблицы. Зависимости бывают функциональные и многозначные.

Функциональная зависимость (functional dependency) является связью типа «многие – к – одному» между множествами атрибутов рассматриваемого отношения. Функциональная зависимость является смысловым (или семантическим) свойством атрибутов отношения. Семантика отношения указывает, как его атрибуты могут быть связаны друг с другом, а также определяет функциональные зависимости между атрибутами в виде ограничений, наложенных на некоторые атрибуты.

Например, в таблице «УЧЕБНЫЙ ПЛАН»столбцы ДИСЦИПЛИНА, СЕМЕСТР и ФОРМА ОТЧЕТНОСТИ функционально зависят от ключа № (порядковый номер) в учебном плане, а в таблице «РЕЗУЛЬТАТЫ СЕССИИ»столбец ОЦЕНКА функционально зависит от составного ключа (СТУДЕНТ, УЧЕБНЫЙ ПЛАН).

Многозначная зависимость. Один атрибут таблицы многозначно определяет другой атрибут той же таблицы, если для каждого значения первого атрибута существует хорошо определенное множество соответствующих значений второго атрибута.

Рассмотрим таблицу «ПРИЕМ ЭКЗАМЕНОВ»:

Дисциплина Преподаватель Форма отчетности
Математический анализ Раков И.И. экзамен
Математический анализ Рыбин К.К. экзамен
Математический анализ Карпов К.Ю. экзамен
Математический анализ Раков И.И. зачет
Математический анализ Рыбин К.К. зачет
Математический анализ Карпов К.Ю. зачет

Таблица отражает связь ДИСЦИПЛИНЫ и ФОРМЫ ОТЧЕТНОСТИ с ФАМИЛИЕЙ ПРЕПОДАВАТЕЛЯ. В этой таблице существует многозначная зависимость «ДИСЦИПЛИНА – ПРЕПОДАВАТЕЛЬ»: дисциплину МАТЕМАТИЧЕСКИЙ АНАЛИЗ ведут несколько преподавателей, и все они могут участвовать в приеме экзаменов и зачетов. Вторая многозначная зависимость «ДИСЦИПЛИНА – ФОРМА ОТЧЕТНОСТИ»: по одной и той же дисциплине могут проводиться и экзамен, и зачет. При этом ФОРМА ОТЧЕТНОСТИ и ПРЕПОДАВАТЕЛЬ не связаны функциональной зависимостью, что приводит к появлению избыточности.

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

- первая нормальная форма (1НФ) - удаление повторяющихся групп данных;

- вторая нормальная форма (2НФ) - удаление атрибутов, зависящих от части первичного ключа;

- третья нормальная форма (3НФ) - удаление атрибутов, не зависящих от первичного ключа;

- четвертая нормальная форма (4НФ) - изоляция независимых множественных отношений;

- пятая нормальная форма (5НФ) - изоляция семантически связанных множественных отношений.

С практической точки зрения, достаточно трех первых форм - следует учитывать время, необходимое системе для "соединения" таблиц при отображении их на экране. 3НФ является окончательной, если имеют место зависимости 1:1 и 1:М. Для отношений М:М процедура продолжается путем построения 4НФ и 5НФ. Поэтому мы ограничимся изучением процесса приведения отношений к первым трем формам.


Сейчас читают про: