9: «Метод декомпозиции. Алгоритм метода»
При декомпозиции - одного отношения получаем два или более отношений, каждое из кот. содержит часть атрибутов исходного отношения. В полученных новых отношениях необходимо удалить дубликаты строк, если таковые возникли. Это значит, что декомпозиция отношения -взятие одной или нескольких проекций исходного отношения так, чтобы эти проекции в совокупности содержали (возможно, с повторениями) все атрибуты исходного отношения. Т.е., при декомпозиции не должны теряться атрибуты отношений. Но при декомпозиции также не должны потеряться и сами данные. Данные можно считать не потерянными в том случае, если возможна обратная операция - по декомпозированным отношениям можно восстановить исходное отношение в точности в прежнем виде. Операцией, обратной операции проекции, является операция соединения отношений. Т.к. при восстановлении исходного отношения путем соединения проекций не должны появиться новые атрибуты, то необходимо использовать естественное соединение.
Проекция R[X] отношения R на множество атрибутов X называется собственной, если множество атрибутов X является собственным подмножеством множества атрибутов отношения R (т.е. множество атрибутов X не совпадает с множеством всех атрибутов отношения R).
Собственные проекции R1 и R2 отношения R называются декомпозицией без потерь, если отношение R точно восстанавливается из них при помощи естественного соединения для любого состояния отношения R: R1><R2=R
Теорема (Хеза). Пусть R(A,B,C) является отношением, и A,B,C - атрибуты или множества атрибутов этого отношения. Если имеется функциональная зависимость AB, то проекции R1=R[A,B] и R2=R[A,C] образуют декомпозицию без потерь.
Доказательство. Д-ть, что R1><R2=R для любого состояния отношения R. В левой и правой части равенства стоят множества кортежей, поэтому для доказательства достаточно доказать два включения для двух множеств кортежей: R1><R2R и R1><R2R.
Докажем первое включение. Возьмем произвольный кортеж r=(a,b,c)R. Докажем, что он включается также и в R1><R2. По определению проекции, кортежи r1=(a,b) R1 и r2=(a,c)R2. По определению естественного соединения кортежи r1 и r2, имеющие одинаковое значение a общего атрибута A, будут соединены в процессе естественного соединения в кортеж (a,b,c) R1><R2. Таким образом, включение доказано.
Докажем обратное включение. Возьмем произвольный кортеж r=(a,b,c) R1><R2. Докажем, что он включается также и в R. По определению естественного соединения получим, что в имеются кортежи r1=(a,b) R1 и r2=(a,c)R2. Т.к. R1=R[A,B], то существует некоторое значение c1, такое что кортеж r1=(a,b,c1)R. Аналогично, существует некоторое значение b1, такое что кортеж r2=(a,b1,c)R. Кортежи r1 и r2 имеют одинаковое значение атрибута A, равное a. Из этого, в силу функциональной зависимости AB, следует, что b=b1. Таким образом, кортеж r2=(a,b,c)R. Обратное включение доказано. Теорема доказана. Основной смысл теоремы Хеза заключается в доказательстве того, что при этом не появятся новые кортежи, отсутствовавшие в исходном отношении.
Варианты декомпозиции. 1) если отношение имеет 1 ключ, то оно декомпозируется путем последовательного применения сначала во 2НФ потом в 3НФ. Или путем выделения крайних ФЗ в отдельное отношение, при этом на каждом этапе контролируетчся эквивалентность множеств детерминант и ключей. 2) если отношение имеет несколько ключей, то строится кольцевое покрытие и декомпозиция осуществляется путем выделения каждой СF зависимости в отдельное отношение. 3) если ключей несколько и они пересекаются, то целесообразно применить Теорему Хеза. После завершения декомпозиции целесообразно проверить чтобы все ФЗ были навязаны БД. Если какая-либо схема отношений явл-ся собствнным подмножеством другой схемы отношения, то это отношение является избытосным и подлежит исключению из проекта. Не ключевые атрибуты, т.е. атрибуты которые не являются потенуиальным ключом, или не являются собственным подмножеством, должны хранится не более чем в 1 отношении. Не целесообразно иметь в проекте отношения с обинаковыми потенциальными ключами. Наличие таких отношений свидетельствует о том, что декомпозиция была сделана не на минимальном покрытии.
- Вопрос 1: «Основные виды моделей хранения информации»
- 2: «Реляционная модель. Основные понятия и термины»
- 3 «Необходимость нормализации бд. Аномалии, причиной которых является использование единственного отношения»
- 4: «Первая и вторая нормальные формы»
- 5: «Третья нормальная форма»
- 6: «Нормальная форма Бойса-Кодда»
- 8: «Неизбыточное, кольцевое, минимальные покрытия»
- 9: «Метод декомпозиции. Алгоритм метода»
- 10: «Метод "сущность-связь" основные термины и понятия. Графическое представление. Нотация Чена»
- 11: «Генерация отношений при степени связи 1:1»
- 12: «Генерация отношений при степени связи 1:n и m:n»
- 13: «Необходимость применения множественных связей и генерация отношений при данном типе связей»
- 14: «Применение ролевого метода при проектировании реляционных баз данных»
- 15: «Стандарт sql»
- 16: «Организация средствами sql запроса с подзапросами»
- 17: «Бинарные операции реляционной алгебры»
- 18: «Унарные операции реляционной алгебры»
- 19: «Метод "сущность-связь" основные термины и понятия. Графическое представление. Нотация Баркера»
- 21.Транзакции, сериализация транзакций.
- Понятия первичного и внешнего ключа.
- 23Понятие функциональной зависимости (фз), полной фз, транзитивной фз.
- 20 Метод синтеза