Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Технологии БД / Методичка Технологии БД (блоки 1-2).doc
Скачиваний:
82
Добавлен:
01.05.2014
Размер:
922.11 Кб
Скачать
      1. Зависимости проекции/соединения и пятая нормальная форма

Приведение отношения к 4NF предполагает его декомпозицию без потерь на две проекции (как и в случае 2NF, 3NF и BCNF). Однако бывают (хотя и нечасто) случаи, когда декомпозиция без потерь на две проекции невозможна, но можно произвести декомпозицию без потерь на большее число проекций. Будем называтьn-декомпозируемымотношением отношение, которое может быть декомпозировано без потерь наnпроекций. До сих пор мы имели дело с 2-декомпозируемыми отношениями.

N-декомпозируемые отношения

Определение: Тривиальная MVD

В переменной отношения rс атрибутами (возможно, составными)AиBMVDABназываетсятривиальной, если либоAB, либоA UNION Bсовпадает с заголовком отношенияr.

Тривиальная MVD всегда удовлетворяется. При ABона вырождается в тривиальную FD. В случаеA UNION B = Hrтребования многозначной зависимости соблюдаются очевидным образом.

Для примера n-декомпозируемого отношения при n > 2рассмотрим пятый вариант переменной отношенияСЛУЖ_ПРО_ЗАДАН, в которой имеется единственно возможный ключ{СЛУ_НОМ, ПРО_НОМ, СЛУ_ЗАДАН}и отсутствуют нетривиальные MVD. Пример значения переменной отношения приведен на Рис. 24.

Как показано на Рис. 24, результат естественного соединения проекций СЛУЖ_ПРО_НОМиПРО_НОМ_ЗАДАНпочти совпадает с телом исходного отношенияСЛУЖ_ПРО_ЗАДАН, но в нем присутствует один лишний кортеж, который исчезнет после выполнения заключительного естественного соединения с проекциейСЛУЖ_ЗАДАНИЕ. Читателям предлагается убедиться, что исходное отношение будет восстановлено при любом порядке естественного соединения трех проекций.

Зависимость проекции/соединения

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

IF (<сн, пн> ТСПН AND <пн, сз>ТПНЗ AND <сн, сз>ТСЗ)

THEN <сн, пн, сз> ТСПЗ

Чтобы возможность восстановления без потерь отношения СЛУЖ_ПРО_ЗАДАНпутем естественного соединения его проекцийСЛУЖ_ПРО_НОМ,ПРО_НОМ_ЗАДАНиСЛУЖ_ЗАДАНИЕсуществовала при любом допустимом значении переменной отношенияСЛУЖ_ПРО_ЗАДАН, должно поддерживаться следующее ограничение:

IF (<сн1, пн1, сз2> ТСПЗ AND <сн2, пн1, сз1>ТСПЗ AND <сн1, пн2, сз1>ТСПЗ)

THEN <сн1, пн1, сз1> ТСПЗ

Это обычное ограничение реального мира, которое для отношения СЛУЖ_ПРО_ЗАДАНможет быть сформулировано на естественном языке следующим образом:

Если сотрудник с номером сн участвует в проекте пн, и в проекте пн выполняется задание сз, и сотрудник с номером сн выполняет задание сз, то сотрудник с номером сн выполняет задание сз в проекте пн.

В общем виде такое ограничение называется зависимостью проекции/соединения. Вот формальное определение.

Пусть задана переменная отношенияr, иA, B, …, Zявляются произвольными подмножествами заголовкаr(составными, перекрывающимися атрибутами). В переменной отношенияrудовлетворяетсязависимость проекции/соединения (Project-Join Dependency – PJD) *( A, B, …, Z)тогда и только тогда, когда любое допустимое значениеrможно получить путем естественного соединения проекций этого значения на атрибутыA, B, …, Z.

Рис. 24. Возможное значение переменной отношения СЛУЖ_ПРО_ЗАДАН (пятый вариант), результаты проекций и результат частичного естественного соединения