- •Методические указания
- •Практическая работа № 5 Методология idef1x
- •Модель субд
- •Преимущества от использования case-средства erWin
- •Инструментарий erWin
- •Задания
- •Контрольные вопросы
- •Практическая работа № 6 Создание логической модели
- •Определение сущностей и атрибутов
- •Логические взаимосвязи
- •Проверка адекватности логической модели
- •Модель данных, основанная на ключах
- •Выбор первичного ключа
- •4. Задания
- •5. Контрольные вопросы
- •Практическая работа № 7 Нормализация. Создание физической модели
- •1. Нормализация
- •1.1. Поддержка нормализации в erWin
- •2. Создание физической модели
- •3. Денормализация
- •4. Пример
- •5. Задания
- •6. Контрольные вопросы
- •Практическая работа № 8 Отчеты в erWin
- •1. Создание отчета
- •2. Пример
- •3. Задания
- •4. Контрольные вопросы
- •Библиографический список
- •Содержание
- •394026 Воронеж, Московский просп., 14
1.1. Поддержка нормализации в erWin
ERWin обеспечивает только поддержку нормализации, но не содержит в себе алгоритмов, автоматически преобразующих модель данных из одной формы в другую.
Поддержка первой нормальной формы
В модели каждая сущность или атрибут идентифицируется с помощью имени. В ERWin поддерживает корректность имен следующим образом:
отмечает повторное использование имени сущности и атрибута;
не позволяет внести в сущность более одного внешнего ключа;
запрещает присвоение неуникальных имен атрибутов внутри одной модели, соблюдая правило «в одном месте - один факт».
2. Создание физической модели
Целью создания физической модели является обеспечение администратора соответствующей информацией для переноса логической модели данных в СУБД.
ERWin поддерживает автоматическую генерацию физической модели данных для конкретной СУБД. При этом логическая модель трансформируется в физическую по следующему принципу: сущности становятся таблицами, атрибуты становятся столбцами, а ключи становятся индексами.
Таблица 7.1. Сопоставление компонентов логической и физической модели
Логическая модель |
Физическая модель |
Сущность |
Таблица |
Атрибут |
Столбец |
Логический тип (текст, число, дата, blob) |
Физический тип (корректный тип, зависящий от выбранной СУБД) |
Первичный ключ |
Первичный ключ, индекс РК |
Внешний ключ |
Внешний ключ, индекс FK |
Альтернативный ключ |
АК-индекс - уникальный, непервичный индекс |
Правило бизнес-логики |
Триггер или сохраненная процедура |
Взаимосвязи |
Взаимосвязи, определяемые использованием FK-атрибутов |
3. Денормализация
После нормализации все взаимосвязи данных становятся определены, исключая ошибки при оперировании данными. Но нормализация данных снижает быстродействие БД. Для более эффективной работы с данными, используя возможности конкретного сервера БД, приходится производить процесс, обратный нормализации, - денормализацию.
Для процесса денормализации не существует стандартного алгоритма, поэтому в каждом конкретном случае приходится искать свое решение. Денормализация обычно проводится на физическом уровне модели. ERWin имеет следующие возможности по поддержке процесса денормализации:
Сущности, атрибуты, группы ключей и домены можно создавать только на логическом уровне модели. В ERWin существует возможность выделения элементов логической модели таким образом, чтобы они не появлялись на физическом уровне.
Таблицы, столбцы, индексы и домены можно создавать только на физическом уровне. В ERWin существует возможность выделения элементов модели таким образом, чтобы они не появлялись на логическом уровне. Эта возможность напрямую поддерживает денормализацию физической модели, так как позволяет проектировщику включать таблицы, столбцы и индексы в физическую модель, ориентированную на конкретную СУБД.