- •Проектирование бд.
- •Правила нормализации логической модели
- •Основы проектирования бд
- •Проектирование баз данных на основе нормализации Аномалии схем отношений. Первая нормальная форма
- •Семантическое моделирование Цели и средства семантического моделирования.
- •Метод “сущность-связь”.
- •Этапы моделирования.
- •Правила формирования отношений.
- •Формирование отношений для связи 1:1.
- •Формирование отношений для связи 1:м.
Проектирование баз данных на основе нормализации Аномалии схем отношений. Первая нормальная форма
Задача проектирования реляционной базы данных заключается в выборе схемы базы из множества альтернативных вариантов, то есть требуется определить набор схем отношений. При этом обычно отвлекаются от объектов предметной области и рассматривают множество всех атрибутов реляционной базы и связи между ними. Предполагается существование универсального отношения, содержащего все атрибуты базы данных, затем на основе анализа связей между атрибутами делаются попытки осуществить декомпозицию универсального отношения, то есть перейти к нескольким отношениям меньшей размерности, причем исходное отношение должно восстанавливаться с помощью операции естественного соединения.
Заметим, что если анализ предметной области показывает, что такое универсальное отношение лишено всякого смысла, то есть его кортежи содержат совершенно не связанные друг с другом данные, то это означает, что фактически мы имеем дело не с одной базой данных, а с несколькими и их следует рассматривать и проектировать автономно. Определение набора атрибутов универсального отношения делается на концептуальном уровне и не подлежит формализации.
Таким образом, задача проектирования реляционной базы данных сводится к декомпозиции, то есть разделению исходного отношения на несколько (как правило, пересекающихся) отношений меньшей арности, удовлетворяющих определенным условиям.
Прежде чем приступить к обсуждению методов проектирования баз данных, кратко рассмотрим наиболее часто встречающиеся недостатки схем отношений. Например, рассмотрим схему отношения
Изготовители = (наэв_изгот, адрес_изгот, изделие, колич_за_год, цена)
Недостатки схемы:
1. Избыточность.
Адрес изготовителя повторяется для каждого изготовляемого изделия.
2. Потенциальная противоречивость (аномалии обновления).
Вследствие избыточности возможно обновление адреса изготовителя в одном кортеже, оставляя его неизменным в другом, то есть возможна ситуация, когда база данных содержит различные адреса для одного изготовителя.
3.Аномалии включения.
В базу данных не может быть записан адрес изготовителя, если не известно, какие изделия и в каком количестве он изготовляет.
4. Аномалии удаления.
Обратная проблема появляется при необходимости удаления всех изделий, изготавливаемых определенным изготовителем, вследствие чего мы теряем его адрес, что не всегда желательно.
В этом примере все перечисленные недостатки исчезают, если заменить исходное отношение двумя отношениями:
Изг_адр = (назв_изгот, адрес_изгот)
Изг__изд = (назв_изгот, изделие, колич_за_год, цена)
Однако приведенная декомпозиция имеет существенный недостаток, чтобы получить адреса изготовителей требуется выполнить операцию естественного соединения, которая работает сравнительно медленно, тем не менее, приведенная декомпозиция явно предпочтительнее исходной схемы отношения.
В теории проектирования реляционных баз данных разработаны несколько нормальных форм схем отношений, в различной степени ycтраняющие перечисленные ранее возможные недостатки исходных схем.
Говорят, что отношение нормализовано или находится в первой нормальной форме, если домен каждого атрибута состоит из неделимых значений, а не множеств или кортежей из элементарного домена или доменов, то есть значения атрибутов - это некоторые элементарные величины, не имеющие структуры. В дальнейшем будем рассматривать только нормализованные отношения.