Понятие нормализации отношений. Нормальные формы

Центральная задана проектирования базы данных экономической информационной системы — определение количества отношений и их атрибутного состава.

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

  • • множество отношений должно обеспечивать минимальную избыточность представления информации;
  • • корректировка отношений не должна приводить к двусмысленности или потере информации;
  • • перестройка набора отношений при добавлении в базу данных новых атрибутов должна быть минимальной.

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

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

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

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

Пример

Возьмем отношение Магазин, Изделие, План, Цена. Вероятным ключом являются атрибуты Магазин. Изделие. Но Цена определяется только Изделием. Избыточность здесь иллюстрируется тем фактом, что цена изделия указывается столько раз, сколько магазинов продают это изделие. Переход ко второй нормальной форме и, соответственно, устранение избыточности данных связано с созданием двух отношений вместо одного исходного: Магазин, Изделие, План и Изделие, Цена.

База данных находится во второй нормальной форме, если все ее отношения находятся во второй нормальной форме.

Отношение соответствует третьей нормальной форме, если оно соответствует второй нормальной форме и среди его атрибутов отсутствуют транзитивные функциональные зависимости.

Транзитивная функциональная зависимость содержит две функциональные зависимости:

  • • вероятный ключ отношения функционально определяет неключевой атрибут;
  • • этот атрибут, в свою очередь, функционально определяет другой неключевой атрибут.

Пример

Отношение № зачетной книжки, Ф.И.О., № группы. Факультет, № группы зависит от № зачетной книжки, а Факультет зависит от № группы. Возникает транзитивная зависимость.

Возникает избыточность данных, так как принадлежность данной группы к факультету указывается столько раз, сколько студентов обучается в данной группе. Ликвидировать данную избыточность также можно, разделив указанное отношение на два: № зачетной книжки, Ф.И.О., № группы и № группы, Факультет.

База данных находится в третьей нормальной форме, если все ее отношения находятся в третьей нормальной форме.

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

 
Посмотреть оригинал
< Пред   СОДЕРЖАНИЕ   ОРИГИНАЛ     След >