Зависимости соединения и пятая нормальная форма — различия между версиями
(→Множественная декомпозиция) |
|||
| Строка 66: | Строка 66: | ||
То лектор $L$ читает курс $C$ группе $G$. | То лектор $L$ читает курс $C$ группе $G$. | ||
| − | При этом есть все 3 вида аномалии: вставки, удаления и обновления. | + | При этом есть все 3 вида аномалии: вставки, удаления и обновления. Например, когда лектор читает что-то группе, группа слушает курс, но лектор конкретно этот курс не читает. |
{{Определение | {{Определение | ||
|definition= | |definition= | ||
| − | В отношении есть зависимость соединения <tex>∗\{X_{1},X_{2},\ldots,X_{n}\}</tex> тогда и тогда тогда, когда соответствующая декомпозиция корректна: <tex>R(X_{1}X_{2}\ldots X_{n})=\pi_{X1}(R)\bowtie\pi_{X2}(R)\bowtie\ldots\bowtie \pi_{X_{n}}(R)</tex> | + | В отношении есть зависимость соединения <tex>∗\{X_{1},X_{2},\ldots,X_{n}\}</tex> тогда и тогда тогда, когда соответствующая декомпозиция корректна: <tex>R(X_{1}X_{2}\ldots X_{n})=\pi_{X1}(R)\bowtie\pi_{X2}(R)\bowtie\ldots\bowtie \pi_{X_{n}}(R)</tex>. При этом все <tex>{X_{i}</tex> должны быть подмножествами исходного множества атрибутов. |
}} | }} | ||
'''Теорема Фейгина''' в терминах зависимости соединения будет выглядеть следующим образом: | '''Теорема Фейгина''' в терминах зависимости соединения будет выглядеть следующим образом: | ||
| Строка 78: | Строка 78: | ||
Тривиальные зависимости соединения $-$ зависимости соединения, у которых одно из отношений, на которые мы проецируем, совпадает с исходным: <tex>\forall R: *\{R, X_{1}, X_{2}, \ldots, X_{n}\}</tex> | Тривиальные зависимости соединения $-$ зависимости соединения, у которых одно из отношений, на которые мы проецируем, совпадает с исходным: <tex>\forall R: *\{R, X_{1}, X_{2}, \ldots, X_{n}\}</tex> | ||
}} | }} | ||
| + | |||
== Пятая нормальная форма (Проекционно-соединительная) == | == Пятая нормальная форма (Проекционно-соединительная) == | ||
Версия 15:49, 22 декабря 2021
Зависимость соединения
Множественная декомпозиция
Рассмотрим отношение и его декомпозицию:
| Course | Lecturer | Group |
|---|---|---|
| СУБД | Корнеев Г. А. | M3438 |
| СУБД | Корнеев Г. А. | M3439 |
| Мат.ан. | Кохась К. П. | M3237 |
| Мат.ан. | Виноградов О. Л. | M3239 |
| Java | Корнеев Г. А. | M3239 |
| Course | Lecturer |
|---|---|
| СУБД | Корнеев Г. А. |
| СУБД | Корнеев Г. А. |
| Мат.ан. | Кохась К. П. |
| Мат.ан. | Виноградов О. Л. |
| Java | Корнеев Г. А. |
| Course | Group |
|---|---|
| СУБД | M3438 |
| СУБД | M3439 |
| Мат.ан. | M3237 |
| Мат.ан. | M3239 |
| Java | M3239 |
| Lecturer | Group |
|---|---|
| Корнеев Г. А. | M3438 |
| Корнеев Г. А. | M3439 |
| Кохась К. П. | M3237 |
| Виноградов О. Л. | M3239 |
| Корнеев Г. А. | M3239 |
Тогда необходимо задать ограничения для обеспечения корректности, то есть:
Если
- Лектор $L$ читает курс $C$
- Лектор $L$ читает группе $G$
- Группа $G$ слушает курс $C$
То лектор $L$ читает курс $C$ группе $G$.
При этом есть все 3 вида аномалии: вставки, удаления и обновления. Например, когда лектор читает что-то группе, группа слушает курс, но лектор конкретно этот курс не читает.
| Определение: |
| В отношении есть зависимость соединения тогда и тогда тогда, когда соответствующая декомпозиция корректна: . При этом все должны быть подмножествами исходного множества атрибутов. |
Теорема Фейгина в терминах зависимости соединения будет выглядеть следующим образом:
Для
| Определение: |
| Тривиальные зависимости соединения $-$ зависимости соединения, у которых одно из отношений, на которые мы проецируем, совпадает с исходным: |
Пятая нормальная форма (Проекционно-соединительная)
| Определение: |
| Отношение находится в пятой нормальной форме тогда и только тогда, когда для каждой нетривиальной ЗС каждое $X_{i} -$ надключ. |
| Утверждение: |
Если отношение находится в 5НФ, то оно находится в 4НФ. |
| По теореме Фейгина . В этой многозначной зависимости $X -$ надключ. Значит, отношение находится в 4НФ. |
Формально, для приведения к 5 нормальной форме необходимо найти все зависимости соединения, однако это достаточно сложно. На практике ЗС, не являющиеся МЗ, встречаются редко. Обычно это можно выяснить с помощью кольцевых ограничений:
Если
- $\ldots$
То