Введение в системы БД (542480), страница 118
Текст из файла (страница 118)
Переменная-отношение будет л-декомпозируемой длл п>2 тогда и только тогда, когда она удовлетворяет некоторому циклическому ограничению. Предположим теперь, что переменная-отношение ЯРЮ действительно удовлетворяет этому не зависящему от времени ограничению (представленный на рис. 12.4 пример данных соответствует такой гипотезе). Далее ограничение 3-декомпозируемости для краткости будем называть ЗД-огриничением. Что означает ЗД-ограничение с практической точки зрения? Для получения ответа на этот вопрос рассмотрим пример, в котором под такими ограничениями подразумевается, что если в реальном мире для переменной- отношения ЯРЮ верны утверждения а) Смит поставляет гаечные ключи, б) Гаечные ключи используются в Манхэттенском проекте, в) Смит является поставщиком для Манхэттенского проекта, то г) Смит поставляет гаечные ключи для Манхэттенского проекта.
Обратите внимание, что (как уже упоминалось в главе 1, раздел 1.3) из взятых в совокупности утверждений а, б и в обычно не следует утверждение г. Действительно, точно такой же пример был рассмотрен в главе 1 для демонстрации "ловушки соединения". Однако в данном частном случае следует отметить, что никакой ловушки здесь нет, поскольку существует дополнительное ЗД-ограничение, имеющее место в реальном мире, благодаря чему вывод утверждения г на основе утверждений а, б и в является вполне правомочным. Возвращаясь к главной теме нашего обсуждения, отметим, что, поскольку ЗД- ограничение удовлетворяется тогда и только тогда, когда переменная-отношение равносильна соединению некоторых ее проекций, такое ограничение называется зависимостью соединения (ЗС).
Зависимость соединения является таким же ограничением для данной переменной-отношения, как многозначная и функциональная зависимости. Ниже дается определение этого понятия. ° Пусть К является переменной-отношением, а А, В, ..., Я вЂ” произвольными подмножествами множества ее атрибутов. Переменная-отношение В удовлетворяет зависимости соединения ч1А, В, ..., Е» (читается "звездочкаА, В, ..., Я") тогда и только тогда, когда любое допустимое значение переменной-отношения В эквивалентно соединению ее проекций по подмножествам атрибутов А, В,..., 2. Например, если использовать сокращенную символьную запись ЯР для подмножества (Я4, Р$» множества атрибутов переменной-отношения ЯРЮ и аналогично использовать сокращения РЛ и ЛЯ для двух других подмножеств, то переменная-отношение ЯРЛ будет удовлетворять зависимости соединения е(ЯР, РЛ, ЗЯ».
Глава»2. Дальнейшая нормализация: более высокие нормальные формы 477 Отсюда ясно, что переменная-отношение ЯРЮ с зависимостью соединения в(ЯР, РЮ, ЮЯ) может быть 3-лекомпозируемой. Однако вопрос состоит в том, следует ли выполнять такую декомпозицию? По всей видимости, следует, так как в связи с наличием зависимости соединения переменная-отношение ЯРЮ характеризуется многочисленными аномалиями обновления, которые можно устранить лишь с помощью 3- декомпозиции. Некоторые примеры подобных аномалий приведены на рис.
12.5. Ответить на вопрос, что произойдет после выполнения З-декомпозиции, читателям предлагается самостоятельно в качестве упражнения. Рис. 12.5. Примеры аномалий обновления в переменной-отношепии ЯРЮ Теорема Фейгина (которая рассматривалась в разделе 12.2) утверждает, что переменная-отношением(А, В, С) может быть декомпозированабез потерь на проекции с атрибутами (А, В) и (А, С) тогда и только тогда, когда для переменной-отношения В выполняются многозначные зависимости А -+э В и А +э С. Теперь теорема Фейгина может быть сформулирована иначе. ° Переменная-отношение К(А, В, С) удовлетворяет зависимости соединения в(АВ, АС) тогда и только тогда, когда она удовлетворяет многозначной зависимо- стиА — эв В ) С.
Поскольку эту теорему можно использовать в качестве определения многозначной зависимости, то либо многозначная зависимость является частным случаем зависимости соединения, либо (что эквивалентно) зависимость соединения является обобщением понятия многозначной зависимости. Формально получим следующее. А -++ В ! С и в( АВ, АС Замечание. Более того, из определения зависимости соединения сразу же следует, что из всех возможных форм это наиболее общая форма зависимости (конечно, имеется в виду, что термин "зависимость" употребляется в узком специальном смысле).
Это значит, что для переменных-отношений, которые подвергаются декомпозиции на проекции и обратной композиции с соединением проекций, не существует более высокой степени зави- 478 Часть 111. Проектирование базы данных симости, по отношению к которой зависимость соединения является всего лишь частным случаем. (Однако если ввести другие операторы декомпозиции, то возможно появление других типов зависимости, которые будут кратко описаны в разделе 12.7.) Возвратившись к рассматриваемому примеру, можно обнаружить следуюшую проблему: переменная-отношение ЯРЮ содержит зависимость соединения, которая не является ни многозначной, ни функциональной. (Упратснение. Объясните, почеиу возникает эта проблема?) Можно также заметить, что можно (и, по всей вероятности, желательно) декомпозировать такую переменную-отношение на меньшие компоненты, а именно — на проекции, определяемые зависимостью соединения.
Данный процесс декомпозиции может повторяться до тех пор, пока все результируюшие переменные-отношения не будут находиться в пятой нориаяьной форме. Дадим определение этой нормальной формы. ° Переменная-отношение К находится в пятой нормальной форме (5НФ), которую иногда иначе называют проекционно-соединительной нормальной формой (ПСНФ), тогда и только тогда, когда каждая нетривиальнаяз зависимость соединения в переменной-отношении Е подразумевается ее потенциальными ключами.
Замечание. Понятие зависимости соединения, "подразумеваемой потенциальными ключами", разъясняется ниже. Переменная-отношение ЯРЮ не нахолится в 5НФ. Она удовлетворяет некоторой зависимости соединения, а именно — ЗД-ограничению, которое, конечно же, не подразумевается ее единственным потенциальным ключом (этот ключ является комбинацией всех ее атрибутов).
Иначе говоря, переменная-отношение ЯРЮ не находится в 5НФ, поскольку она.иожет быть 3-декомпозирована и возможность такой декомпозиции не подразумевается тем фактом, что комбинация атрибутов (Я(), РЯ, ЗЯ) является ее потенциальным ключом. Наоборот, после 3-декомпозиции проекции ЯР, РЛ и ЮЯ находятся в 5НФ, поскольку в них вовсе нет нетривиальных зависимостей соединения. Поскольку еше не было дано объяснение выражения "зависимость соединения, подразумеваемая потенциальными ключами", вероятно, пока не вполне очевиден тот факт, что любая переменная-отношение в 5НФ автоматически находится в 4НФ. Однако это так, поскольку многозначная зависимость является частным случаем зависимости соединения. Действительно, Фейгин в (12.14) показал, что любая многозначная зависимость, подразумеваемая потенциальным ключом, на самом деле должна быть функциональной зависимостью, в которой потенциальный ключ является детерминантом.
В той же работе Фейгин показал, что любая переменная-отношение может быть подвергнута декомпозиции без потерь на эквивалентный набор переменных-отношений в 5НФ, т.е. 5НФ всегда достижима. Теперь следует объяснить, что означает понятие "зависимость соединения, подразумеваемая потенциальными ключами". Для начала в качестве простого примера (который использовался в разделе 11.5 главы 11) рассмотрим переменную-отношение поставшиков Я с потенциальными ключами ЯЯ и ЯИКЕ. Такая переменная-отношение удовлетворяет нескольким зависимостям соединения, в частности следуюшей зависимости.
ь( ( Яэ, ЯИАИЕ, Я?Л?1)Я ), ( Яц, С1ТЗ ) ) 3 Зависимость соединения ь(А, В, ..., Е) называется тривиальной тогда и только тогда, когда одна из проекций А, В, ..., Я является проекцией, идентичной В (т.е. проекцией по всем атрибутам переменной-отношения В). Глава 12. Дальнейшая нормализация: более выеозпге нормальные формы 479 Это значит, что переменная-отношение Б равносильна соединению ее проекций с атрибутами (Бз, ЯЫАМЕ, ЯТАТВБ) и (Бз, С1ТТ).