- •Инфологическая модель
- •Основные понятия er-диаграмм
- •Обзор нотаций, используемых при построении диаграмм "сущность-связь"
- •Нотации в eRwin dm
- •Особенности методологий idef1x и ie
- •Уровни модели данных
- •Пример последовательность разработки простой er-модели
- •Создание логического уровня модели
- •Создание физического уровня модели
- •Колонки
- •Прямая генерация
- •Обратная генерация
- •Сравнение и синхронизация с Complete Compare
- •Уровни проектирования
- •Документирование моделей данных в eRwin dm
Прямая генерация
Процесс генерации физической схемы базы данных из модели данных называется прямым проектированием (Forward Engineering). При генерации схемы кроме таблиц и представлений ERwin DM создает триггеры ссылочной целостности, хранимые процедуры, индексы, ограничения и другие объекты, доступные для выбранной СУБД.
Обратная генерация
Процесс генерации модели из схемы базы данных называется обратной генерацией или обратным проектированием (Reverse Engineering). ERwin DM позволяет создать модель данных путем обратного проектирования имеющейся базы данных. После того как модель создана, можно переключиться на другой сервер (модель будет конвертирована) и произвести прямое проектирование структуры базы данных для другой СУБД.
ERwin Data Modeler поддерживает возможности как прямого и обратного генерирования, так и сравнения и синхронизации, является (ERwin DM).
Сравнение и синхронизация с Complete Compare
В настоящее время организации, использующие базу данных, стремятся иметь одновременно и модель этой базы данных на основе одной или нескольких распространенных графических нотаций, например: IDEF1, IDEF1Х, IE, ERD, DFD, DM и т.п.
Модель, в первую очередь модель логического уровня, в которой рекомендуется использовать терминологию предметной области, дает компактное наглядное представление о данных, их свойствах и отношениях. Благодаря этому модель логического уровня может быть понятна разным группам пользователей: администраторам баз данных, программистам, конечным пользователям информационных систем и т.д., и выступать в качестве средства общения разных специалистов организации, вынужденных работать над одним проектом с использованием базы данных.
Существует два основных типа проекта, в ходе которых в организации появляется модель данных:
проекты, связанные с разработкой баз данных (как правило, в составе проектов по разработке информационных систем)
проекты, связанные с документированием и/или оптимизацией уже действующей базы данных.
В первом случае в процессе разработки базы данных с помощью CASE-средства создается модель (логический уровень, затем физический уровень), затем на ее основе генерируется каталог базы данных.
Во втором случае стремятся использовать CASE-средства для получения модели физического уровня с помощью обратной генерации из действующей базы данных. На основе полученной таким образом физической модели разрабатывается модель логического уровня, использующая графическую нотацию и терминологию предметной области, с целью документирования и/или оптимизации базы данных.
При одновременном наличии в организации базы данных и ее модели к задачам сопровождения базы данных добавляется задача регулярного (например, раз в месяц) сравнения и синхронизации базы данных с ее моделью.
Одним из инструментов ERwin DM является инструмент Complete Compare (полное сравнение). Инструмент Complete Compare позволяет автоматизировать трудоемкий процесс сравнения и синхронизации моделей, скриптов и баз данных. Сравнение можно проводить как по всему множеству объектов и всему множеству их свойств, так и по отдельным типам объектов и отдельным свойствам объектов, т.е. фильтровать объекты и свойства фигурантов сравнения.
Инструмент Complete Compare позволяет выявить отличие свойств одного и того же объекта фигурантов сравнения, а также найти объекты и свойства, отсутствующие в одном из фигурантов сравнения.
По результатам сравнения можно сгенерировать отчет в форматах HTML, DOC (Word), XLS (Excel).
Выявленные в результате сравнения отличия можно выборочно переносить в фигуранты сравнения для их обновления, т.е. синхронизировать. Для переноса выбранных отличий в базу данных ERwin DM может автоматически сгенерировать ALTER-скрипт на изменение.
Основными этапами работы с инструментом Complete Compare являются:
Выбор пары фигурантов сравнения: моделей, скриптов, баз данных.
Выбор объектов и свойств, по которым будет проводиться сравнение (фильтрация). (Список сравниваемых объектов и свойств зависит от выбранной СУБД.)
Автоматическое обнаружение отличий (сравнение). Определение способов разрешения отличий (синхронизации). Это самый важный этап в процессе Complete Compare.
Сохранение синхронизированных моделей.
Инструмент Complete Compare позволяет сравнивать и синхронизировать следующие пары фигурантов:
модель – модель,
модель – SQL-скрипт,
модель – база данных,
SQL-скрипт – SQL-скрипт
SQL-скрипт – база данных
база данных – база данных
Пример сравнения «модель – модель».
Пример сравнения «модель – SQL-скрипт ».
Пример сравнения «модель – база данных».
Пример сравнения «SQL-скрипт – SQL-скрипт».
Пример сравнения «SQL-скрипт – база данных».
Пример сравнения «база данных – база данных».
Можно загрузить несколько моделей и выполнить сравнение любых из загруженных моделей без их перезагрузки. Если фигурантом сравнения является SQL-скрипт или база данных, то ERwin DM сначала проводит обратную генерацию до уровня модели. Таким образом, фактическое сравнение Complete Compare проводит на уровне «модель – модель». Поэтому в Мастере Complete Compare фигуранты сравнения называются просто Left Model (левая модель) и Right Model (правая модель).
Для функции Complete Compare можно выбрать один из трех уровней сравнения (закладка Type Selection): логический Logical, физический Physical и базы данных Database. Допускается одновременный выбор уровней Logical и Physical. Если одна из моделей является чисто логической, то доступным оказывается только уровень Logical.
Однако если одна из моделей чисто физическая, то можно выбрать как Physical, так и Database. Разница между уровнями Physical и Database заключается в том, что уровень Database не включает всех свойств моделирования (например, графические шрифты, цвета, рисованные объекты, UDP и т. д.), и такие свойства исключаются из сравнения на уровне базы данных.
Для классической логико-физической модели доступны как логический (Logical), так и физический (Physical) уровни, причем можно одновременно сравнивать модели на физическом и логическом уровнях.
Диалог Resolve Differences упрощает анализ результатов сравнения моделей; отображает различия моделей вплоть до различий отдельных свойств объектов, имеет инструменты для навигации по списку выявленных различий и маркировки различий, позволяет выбирать отдельные элементы для синхронизации моделей (разрешения различий), может сгенерировать скрипты на изменение моделей по результатам синхронизации, построить отчет по результатам сравнения.
