Денормализация БД

НФ

Опр.1: Отношение находится в 3НФ, если:

  1. Удовлетворяются все требования 2НФ.
  2. Если каждый неключевой атрибут не транзитивно зависит от первичного ключа.

Опр.2: Отношение находится в 3НФ в том случае, если все неключевые атрибуты взаимно независимы и полностью зависят от первичного ключа.

 

ФИО > оклад > должность

ФИО > стаж > Д_стаж

ФИО > должность > оклад

 

Транзитивные зависимости также порождают избыточное порождение данных.

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

В результате получим:

r3

ФИО Должность Стаж Кафедра
Иванов И.М Преподаватель
Петров М.И Ст. преподаватель
Сидоров Н.Г Преподаватель
Егоров В.В Преподаватель

 

 


r4

Должность Оклад
Преподаватель
Ст. преподаватель

r5

Стаж Д_стаж

 

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

Если в отношении имеется зависимость атрибутов составного ключа от неключевых атрибутов, то необходимо перейти к усиленной 3НФ, она называется НФБК.

Отношение находится в НФБК, если оно находится в 3НФ, и в нем отсутствуют зависимости ключей (атрибутов составного ключа) от неключевых атрибутов.

 

 

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