Предположим, что у нас есть схема, Lending-schema
Lending-schema = (bname, bcity, assets, cname, loan#, amount)
Кортеж т в этом отношении имеет следующие атрибуты:
т [активы] является имущество для [bname]
t [bcity] i s город для t [bname]
t [loan #] - номер кредита, сделанный веткой t [bname], до t [cname].
т [сумма] является сумма кредита для т [займа #]
Если мы хотим, чтобы добавить кредит в нашу базу данных, мы должны кортеж со всеми атрибутами, необходимыми для кредитования-схемы , Таким образом, нам нужно вставить
(SFU, Burnaby, 2M, Turner, L-31, 1K)
Мы сейчас повторять информацию активов и филиальные города для каждого кредита. Повторение информации отходов пространства. Повторение информации усложняет обновление.
Нам нужно изменить многие кортежи, если активы ветви меняются.
Таким образом, после анализа этой
- Мы знаем, что отрасль находится точно в одном городе.
- Мы также знаем, что филиал может делать много займов.
Другая проблема заключается в том, что мы не можем представить информацию для отрасли (активов и города), если у нас нет кортеж для кредита в этой отрасли.
Если мы не используем nulls, мы можем иметь эту информацию только при наличии займов и должны удалить ее, когда погашается последний кредит.
Таким образом, если мы разложим на две схемы
Branch-customer-schema = (bname, bcity, assets, cname)
Customer-loan-schema = (cname, loan#, amount)
Эти две таблицы формируются после разложения основной таблицы.
Вкратце: Разделение таблицы на несколько таблиц Decomposition
. Наше разложение должно быть декомпозицией без потерь
Thak you, Manoj! для вашего вида объяснения. – user122358
Это противоположность денормализации? – user122358
Да .. вы можете сказать, что .. @ user122358 –