Независимые проекции отношений. Теорема Риссанена

 

Обратите внимание, что для переменной отношения СЛУЖ {СЛУ_НОМ, СЛУ_УРОВ, СЛУ_ЗАРП}, кроме декомпозиции на отношения СЛУЖ1{СЛУ_НОМ,СЛУ_УРОВ}и УРОВ{СЛУ_УРОВ,СЛУ_ЗАРП}, возможна и декомпозиция на отношения СЛУЖ1 {СЛУ_НОМ,СЛУ_УРОВ}и СЛУЖ_ЗАРП{СЛУ_НОМ,СЛУ_ЗАРП}.*Оба отношения, полученные путем второй декомпозиции, находятся в 3NF, и эта декомпозиция также является декомпозицией без потерь. Тем не менее, вторая декомпозиция, в отличие от первой, не устраняет проблемы, связанные с обновлением отношения СЛУЖ. Например, по-прежнему невозможно сохранить данные о разряде, которым не обладает ни один служащий. Обсудим, с чем это связано.

 

Отношения СЛУЖ1и УРОВмогут обновляться независимо (являются независимыми проекциями), и при этом результат их естественного соединения всегда будет таким, как если бы обновлялось исходное отношение СЛУЖ. Это происходит потому, что FD отношения СЛУЖтрансформировались в индивидуальные ограничения первичного ключа отношений СЛУЖ1и УРОВ. При второй декомпозиции FD СЛУ_УРОВ® СЛУ_ЗАРПтрансформируется в ограничение целостности сразу для двух отношений (такого рода ограничения целостности называются ограничениями базы данных, и их поддержка гораздо более накладна с технической точки зрения). Понятно, что в процессе нормализации декомпозиция отношения на независимые проекции является предпочтительной. Необходимые и достаточные условия независимости проекций отношения обеспечивает теорема Риссанена.

 

Теорема Риссанена.

 

Проекции r1 и r2 отношения r являются независимыми тогда и только тогда, когда

· Каждая FD в отношении r логически следует** из FD в r1 и r2;

· Общие атрибуты r1 и r2 образуют возможный ключ хотя бы для одного из этих отношений.

 

Мы не будем приводить доказательство этой теоремы, но продемонстрируем ее правильность на примере двух показанных выше декомпозиций отношения СЛУЖ. В первой декомпозиции (на проекции СЛУЖ1и УРОВ) общий атрибут СЛУ_УРОВявляется возможным (и первичным) ключом отношения УРОВ, а единственная дополнительная FD отношения СЛУЖ(СЛУ_НОМ® СЛУ_ЗАРП) логически следует из FD СЛУ_НОМ® СЛУ_УРОВи СЛУ_УРОВ® СЛУ_ЗАРП, выполняемых для отношений СЛУЖ1и УРОВсоответственно. Вторая декомпозиция удовлетворяет второму условию теоремы Риссанена (СЛУ_НОМявляется первичным ключом в каждом из отношений СЛУЖ1и СЛУ_ЗАРП), но FD СЛУ_УРОВ® СЛУ_ЗАРПне выводится из FD СЛУ_НОМ® СЛУ_УРОВи СЛУ_НОМ® СЛУ_ЗАРП.

 

Атомарным отношением называется отношение, которое невозможно декомпозировать на независимые проекции. Далеко не всегда для неатомарных (не являющихся атомарными) отношений требуется декомпозиция на атомарные проекции. Например, отношение СЛУЖ2{СЛУ_НОМ, СЛУ_ЗАРП, ПРО_НОМ}со множеством FD {СЛУ_НОМ® СЛУ_ЗАРП,СЛУ_НОМ® ПРО_НОМ} не является атомарным (возможна декомпозиция на независимые проекции СЛУЖ3{СЛУ_НОМ, СЛУ_ЗАРП} и СЛУЖ4 {СЛУ_НОМ, ПРО_НОМ}). Но эта декомпозиция не улучшает свойства отношения СЛУЖ2 и поэтому не является осмысленной. Другими словами, при выборе способа декомпозиции нужно стремиться к получению независимых проекций, но не обязательно атомарных.