
- •Т.Е.Ильиных л.И.Шустова проектирование реляционных баз данных в нотациях idef1x
- •Содержание
- •Этапы проектирования базы данных
- •Инфологическое проектирование базы данных
- •Общие сведения
- •Описание бизнес компонентов и бизнес процессов
- •Сущность
- •Атрибут
- •Другие компоненты инфологической модели
- •Уровни представления данных
- •Этапы инфологического проектирования Инициирование проекта (фаза 0)
- •Определение сущностей (фаза 1)
- •Построение модели уровня сущностей (фаза 2)
- •Построение модели уровня ключей (фаза 3)
- •Построение полноатрибутной модели (фаза 4)
- •Нормализация данных
- •Даталогическое проектирование базы данных
- •Создание даталогической модели Общие сведения
- •Получение спецификаций внутренней схемы базы данных
- •Ограничения целостности
- •Результаты этапа даталогического проектирования
- •Имя таблицы
- •Основы нормализации отношений Общие сведения
- •Первая нормальная форма
- •Вторая нормальная форма
- •Третья нормальная форма
- •Нормальная форма Бойса – Кодда
- •Четвертая нормальная форма
- •Пятая нормальная форма
- •Денормализация
- •Примеры проектирования баз данных различных бизнес приложений
- •Общие замечания
- •Проектирование базы данных "Школа" Постановка задачи
- •Инициирование проекта (фаза 0)
- •Определение множеств сущностей (фаза 1) Выделение множеств сущностей
- •Описание множеств сущностей
- •Пул сущностей
- •Построение модели уровня сущностей (фаза 2)
- •Концептуальная схема уровня сущностей
- •Построение модели уровня ключей (фаза 3) Разрешение неопределенных связей
- •Пул сущностей
- •Определение связей
- •Определение ключевых атрибутов и доменов
- •Изучаемый предмет/e5
- •Описание доменов
- •Описание атрибутов
- •Концептуальная схема
- •Построение полноатрибутной модели (фаза 4)
- •Описание доменов
- •Описание атрибутов
- •Явные ограничения целостности
- •Даталогическая модель
- •Проектирование базы данных "Обмен валюты" Постановка задачи
- •Инициирование проекта (фаза 0)
- •Определение множеств сущностей (фаза 1) Выделение множеств сущностей
- •Описание множеств сущностей
- •Пул сущностей
- •Фаза 2. Построение модели уровня сущностей Матрица связей
- •Матрица связей
- •Описание связей
- •Описание связей
- •Концептуальная схема уровня сущностей
- •Построение модели уровня ключей (фаза 3) Разрешение неопределенных связей
- •Пул сущностей
- •Определение связей
- •Определение ключевых атрибутов и доменов
- •Описание доменов
- •Описание атрибутов
- •Концептуальная схема
- •Построение полноатрибутной модели (фаза 4)
- •Описание доменов
- •Описание атрибутов
- •Явные ограничения целостности
- •Даталогическая модель
- •Проектирование базы данных "Торговля" Постановка задачи
- •Инициирование проекта (фаза 0)
- •Определение множеств сущностей (фаза 1) Выделение множеств сущностей
- •Описание множеств сущностей
- •Пул сущностей
- •Построение модели уровня сущностей (фаза 2)
- •Концептуальная схема уровня сущностей
- •Построение модели уровня ключей (фаза 3) Разрешение неопределенных связей
- •Пул сущностей
- •Описание связей
- •Определение ключевых атрибутов и доменов
- •Товар в списке цен/e5
- •Описание доменов
- •Описание атрибутов
- •Концептуальная схема
- •Построение полноатрибутной модели (фаза 4)
- •Описание доменов
- •Описание атрибутов
- •Явные ограничения целостности
- •Даталогическая модель
- •Список литературы
- •115409, Москва, Каширское ш., 31
Построение полноатрибутной модели (фаза 4)
Полноатрибутная модель является дальнейшим развитием модели уровня ключей и включает в себя следующие элементы: пул сущностей, описание доменов, описание атрибутов, описание связей, FA-диаграмму, требования пользователей, ограничения целостности, лингвистические отношения и алгоритмические связи показателей.
На данном этапе проектирования определяются все атрибуты модели, уточняется описание используемых доменов и строится FA-диаграмма. На рис. 2.34 приведен пример FA-диаграммы, которую можно рассматривать как вариант развития EB-диаграммы, приведенной на рис. 2.33.
Рис. 2.33. Пример KB-диаграммы
Рис. 2.34. Пример FA-диаграммы
Нормализация данных
Далее на фазе 4 могут быть решены вопросы нормализации данных (полностью или частично). Нормализация – это процесс проверки (а при необходимости и преобразования) составных частей модели данных реляционной структуры с целью сокращения объема памяти для хранения информации и устранения аномалий в организации хранения данных и манипулировании данными. В результате нормализации должна быть создана структура данных, при которой информация о каждом факте хранится только в одном месте. Процесс нормализации базируется на семантике и сводится к последовательному приведению структуры данных к нормальным формам, т.е. некоторым формальным требованиям к организации данных. Теория нормализации данных разработана применительно к этапу даталогического проектирования. Однако многие современные методики проектирования концептуальных схем данных (в частности IDEF1X) позволяют решить некоторые проблемы нормализации еще на этапе инфологического проектирования. При проектировании информационных систем решение о том, на каком этапе проектирования проводить нормализацию данных, принимает рабочая группа проекта.
В настоящее время известно шесть нормальных форм данных. В связи с тем, что методология стандарта IDEF1X поддерживает нормализацию структур данных до четвертого уровня, кратко рассмотрим некоторые формальные правила, позволяющие привести полноатрибутную модель к четвертому нормальному уровню. Более подробно основы теории нормализации данных приведены в следующей главе.
Процесс нормализации концептуальной схемы проводится на фазе 4 инфологического проектирования и заключается в последовательном приведении каждой сущности полноатрибутной модели к четвертому нормальному уровню. В результате этих преобразований составные части полноатрибутной модели могут претерпеть достаточно существенные изменения.
Для приведения сущности к первой нормальной форме необходимо устранить в ней все составные атрибуты, а также атрибуты, имеющие множественные значения. То есть необходимо, чтобы сущность состояла только из атомарных атрибутов. Для этого следует:
разбить составные атрибуты на атомарные;
все атрибуты, имеющие множественные значения, поместить в новые сущности;
установить идентифицирующую определенную связь от старой сущности к каждой новой сущности.
Для приведения сущности ко второй нормальной форме необходимо устранить в ней атрибуты, зависящие только от части первичного ключа. То есть каждый атрибут сущности должен зависеть от всего первичного ключа. Для этого следует:
выделить атрибуты, которые зависят только от части первичного ключа, и поместить их в новую сущность;
установить идентифицирующую определенную связь от старой сущности к новой.
Для приведения сущности к третьей нормальной форме необходимо устранить в ней атрибуты, зависящие от атрибутов, не входящих в состав первичного ключа. То есть каждый атрибут сущности должен зависеть только от первичного ключа. Для этого необходимо:
выделить атрибуты с одной и той же зависимостью не от первичного ключа и поместить их в новую сущность;
установить необязательную не идентифицирующую определенную связь от новой сущности к старой.
Для приведения сущности к четвертой нормальной форме необходимо устранить в ней многозначные зависимости. Для этого необходимо:
выделить атрибуты с многозначной зависимостью и перенести их в разные сущности;
связь между новыми сущностями не устанавливается (ссылочная целостность в этом случае поддерживается при помощи триггеров).
Построением нормализованной полноатрибутной модели заканчивается этап инфологического проектирования базы данных реляционного типа.