СТАТЬЯ |
21.02.01
|
Сергей Маклаков,
(с) 2001 Interface Ltd.
Руководитель Учебно-консалтингового центра
Эта статья была опубликована на сайте www.compress.ru
Журнал КомпьютерПресс, #1 2001
Моделирование данных представляет собой сложную и ответственную задачу, поскольку от качества модели данных зависит, в конечном счете, эффективность и производительность информационной системы. На рынке CASE- средств давно известен инструмент моделирования данных Erwin ERX. Это средство позволяет значительно облегчить процесс моделирования за счет построения графической модели данных и автоматической генерации схемы данных для выбранной СУБД. Однако, Erwin ERX не в состоянии обеспечить процесс поверки качества данных. Хотя графическое представление данных облегчает такую проверку, все же до недавнего времени эта работа не была автоматизирована.
В октябре 2000 года компания Computer Associates выпустила новый программный продукт серии ERwin - ERwin Examiner. Этот основанный на базе знаний инструмент позволяет анализировать структуру баз данных с целью выявления недочетов и ошибок проектирования. ERwin Examiner дополняет функциональность Erwin ERX, автоматизируя трудоемкую задачу поиска и исправления ошибок, и одновременно повышая квалификацию модельщиков данных благодаря встроенной системе обучения. Принципиальная схема работы ERwin Examiner показана на рис.1.
ERwin Examiner может использовать в качестве источника метаданных готовую модель Erwin ERX, DDL – скрипт или провести обратное проектирование базы данных. Выбор источника метаданных можно сделать в диалоге Select Project Type (рис.2), возникающем при создании нового проекта.
ERwin Examiner поддерживает работу со следующими СУБД:
Для визуального представления импортированной модели ERwin Examiner имеет несколько окон. В левой части главного окна имеются три закладки - Tables, Relationships и Diagnostics.
Закладка Tables содержит иерархический список (рис. 3), первый уровень которого содержит список открытых в ERwin Examiner моделей, второй- список таблиц, другие – список колонок и первичных ключей. Кнопка “i” слева от имени колонки вызывает диалог с подробной информацией об объекте.
Закладка Relationships содержит информацию о связях (рис. 4). Первый уровень списка на закладке Tables содержит список моделей, второй- список таблиц, третий – связей Paternt to Child, четвертый - список ключей и связей нижнего уровня.
Закладка Diagnostics содержит информацию об ошибках и недостатках модели данных (рис. 5). Первый уровень списка на закладке Tables содержит список моделей, второй – категорий ошибок. Подробное описание ошибки можно получить, щелкнув левой кнопкой мыши по кнопке “i” слева от имени ошибки.
Ошибки объединены в четыре категории. В первую категорию (Columns) входят ошибки проектирования колонок. Ниже приведен фрагмент списка ошибок этой категории:
В четвертую категорию входят ошибки связей (Relationships):
По умолчанию связи таблиц показываются в нетрадиционном синтаксисе – в виде ссылок (рис.6), однако, существует возможность представления связей в более привычном стиле – в виде линий. Ссылки на диаграмме служат для навигации – щелчок по ссылке переключает окно на дочернюю или родительскую таблицу. Диаграмма таблиц весьма информативна – в графическом виде показываются не только таблицы и колонки, но и ограничения, индексы, найденные ошибки. Из контекстного меню (Legend) можно легко вызвать справку по системе обозначений диаграммы (рис.7).
Результатом диагностики ошибок может стать отчет генерация SQL- скрипта, корректирующего ошибки моделирования. Ниже приведен фрагмент корректирующего кода, сгенерированного для Oracle:
Corrective Oracle SQL Scripts for model: ORADEMO
--Including implied foreign keys.
--Sat Oct 28 14:59:07 2000
-- Enable disabled constraint in table ITEM
ALTER TABLE ITEM ENABLE CONSTRAINT ENOUGH_STOCK;
-- Create secondary index in table EMPLOYEE
-- to achieve better performance in joins with EMPLOYEE
CREATE INDEX IX1EMPLOYEE_EMPLOYEE ON EMPLOYEE
(
MANAGER_ID
);
-- Create secondary index in table SALESMAN
-- to achieve better performance in joins with STATE
CREATE INDEX IX1SALESMAN_STATE ON SALESMAN
(
COUNTRY_ID,
ASSIGNED_STATE
);
-- Create secondary index in table SALESMAN
-- to achieve better performance in joins with EMPLOYEE
CREATE INDEX IX1SALESMAN_EMPLOYEE ON SALESMAN
(
EMPLOYEE_ID
);
Ключевой возможностью ERwin Examiner является возможность обучения модельщиков данных. При вызове описания ошибки (кнопка “i” слева от имени ошибки в закладке Diagnostics) появляется диалог с описанием ошибки, содержащий кнопку Teach Me. Щелчок по этой кнопке вызывает справку по данной проблеме, включая примеры и описание путей решения проблемы. Следовательно, модельщики данных обучаются в первую очередь тем темам, которые они плохо знают.
Помимо выявления ошибок, ERwin Examiner позволяет также сравнивать модели данных и сливать модели. Для работы с большими моделями предусмотрена удобная навигация по модели и работа с подмоделями, причем диагностика может быть проведена в рамках отдельной подмодели.
В целом, применение ERwin Examiner для моделирования данных позволяет решить следующие задачи:
Другие статьи по продуктам Computer Associates
Обсудить на форуме ROSS Systems
Отправить ссылку на страницу по e-mail
Interface Ltd.Отправить E-Mail http://www.interface.ru |
|
Ваши замечания и предложения отправляйте автору По техническим вопросам обращайтесь к вебмастеру Документ опубликован: 21.02.01 |