Создание логической ER-модели базы данных

ПМ.02 Разработка и администрирование баз данных

МДК.02.02 Технология разработки и защиты баз данных

Тема 2.1 Проектирование и реализация баз данных

ЛАБОРАТОРНЫЙ ПРАКТИКУМ

(ЛАБОРАТОРНАЯ РАБОТА №2)

Построение инфологической модели данных с использованием Cаse-средств

Цель: овладеть практическими навыками построения инфологической модели данных с использованием Cаse-средств.

Оборудование: компьютерный класс.

Программноеобеспечение: CA Erwin Data Modeler.

Описание CA Erwin Data Modeler

CA ERwin Data Modeler (ранее ERwin) – CASE-средство для проектирования и документирования баз данных, которое позволяет создавать, документировать и сопровождать базы данных, хранилища и витрины данных.

CA ERwin Data Modeler позволяет гибко генерировать модели данных, удовлетворяющие заданным требованиям. Поддерживает разделение логических и физических моделей, а также традиционные объединенные логические/физические модели. Обеспечивает хранение истории решений по дизайну и знаний об отношениях, что позволяет быстро решать проблемы воздействия изменений с одного уровня дизайна на другой.

CA ERwin Data Modeler помогает управлять большими корпоративными моделями с помощью предметных областей (Subject Areas) и хранимых отображений (Stored Displays). Предметные области предоставляют сфокусированное представление для отдельных специалистов по моделированию, делящее модель на меньшие управляемые подмножества. Хранимые отображения предлагают различные графические представления модели или ее предметных областей, что облегчает обмен информацией между специализированными группами пользователей.

Функция полной синхронизации автоматизирует полную двунаправленную синхронизацию моделей, сценариев и БД. Она сравнивает один элемент с другим, отображает различия и позволяет выбрать, какие из этих различий перемещать и в каком направлении. Если изменения модели переносятся в БД, CA ERwin DM может по желанию разработчика автоматически сгенерировать сценарий ALTER для этой БД.

CA ERwin Data Modeler включает в себя оптимизированные шаблоны триггеров целостности ссылочных данных и широкофункциональный межплатформенный макроязык для БД, позволяющий настраивать триггеры и хранимые процедуры. Настраиваемые шаблоны облегчают создание физического дизайна и полных определений (в соответствии с конечной БД).

CA ERwin Data Modeler поддерживает специализированные технологии для хранилищ данных (например, многомерное моделирование Star Schema и Snowflake), оптимизируя, таким образом, хранилище для заданных нужд производительности и анализа. Также продукт собирает и документирует широкий спектр информации о хранилище, включая источники данных, логику преобразования и правила управления данными.

Для обмена данными и совместной работы в процессе моделирования данных очень важны визуализация и публикация. CA ERwin DM предоставляет гибкие и настраиваемые возможности для создания отчетов и вывода на печать. Отчеты можно генерировать в различных форматах, включая HTML, PDF, RTF и TXT.

CA ERwin Data Modeler предоставляет возможности импорта и экспорта с помощью готового набора мастеров для обмена метаданными модели. Поддерживаются более 70 стандартных отраслевых форматов для моделирования, дизайна и управления метаданными, включая: UML, OMG, CWM, XML, ETL, EII, BI и различные решения для репозиториев метаданных.

Описание интерфейса

Во всей линейке продуктов компании Computer Associates интерфейс практически идентичен. Различия заключаются в наличии или отсутствии дополнительных окон, требуемых для выполнения операций, которые определяются назначением и функционалом соответствующего продукта. Интерфейс CA ERWin Data Modeler показан на рисунке 1.

Рисунок1 - Интерфейс CA ERWin Data Modeler

Можно выделить 5 основных его составляющих:

1. Основное меню и меню инструментов.

2. Model Explorer (навигатор модели).

3. Основная рабочая область.

4. Action Log Pane (панель журнала действий).

5. Advisories Pane (панель советов).

Панель инструментов разделена на 8 блоков, каждый из которых предоставляет инструменты для выполнения определённого набора действий. Название блоков соответствует реализуемому с их помощью функционалу:

· ERWin Toolbar (рисунок 2) содержит базовый набор функций для управления процессом разработки базы данных;

Рисунок 2 - ERWin Toolbar

· Font&ColorToolbar позволяет изменять параметры отображаемых шрифтов (рисунок 3);

Рисунок 3 - Font & Color Toolbox

· Erwin Toolbox содержит инструменты для создания диаграмм баз данных (рисунок 4);

Рисунок 4 – Erwin Toolbox

Примечание: В зависимости от выбранной нотации вид некоторых инструментов панели отличается.

· Erwin Transform Toolbar содержит инструменты денормализации, которые необходимы для разработки физической модели данных (рисунок 5)

Рисунок 5 - ERwin Transform Toolbar

· Modelmart Toolbarпозволяет создавать и изменять в БД некий репозиторий, к которому могут обращаться и хранить в нем свои модели все остальные продукты (рисунок 6);

Рисунок6 - Modelmart Toolbar

Примечание:ТребуетсяERwin Model Manager.

· Erwin Alignmen tToolbar предназначен для выравнивания элементов модели, а также их группировки (рисунок 7);

Рисунок 7 - ERwin Alignment Toolbar

· Drawing Objects Toolbar предназначен для внесения в модель данных произвольных графических примитивов, предназначенных для улучшения читаемости модели и её наглядности (рисунок 8);

Рисунок 8 - Drawing Objects Toolbar

· DatabaseToolbar содержит инструменты прямого проектирования схем баз данных из их моделей и обратного проектирования моделей баз из их схем (рисунок 9).

Рисунок 9 - DatabaseToolbar

Для поиска и редактирования объектов модели данных ERwin содержит специальную панель – Model Explorer. При запуске ERwin она располагается слева от окна модели. Model Explorer содержит 2 вкладки – Model и SubjectAreas.

Вкладка Model (рисунок 10) содержит в виде раскрывающегося списка все объекты модели как физического, так и логического уровня - сущности, таблицы, атрибуты, колонки, связи, представления, объекты физической памяти и др.

Рисунок 10 - Вкладка Model

Model Explorer позволяет редактировать объекты непосредственно в списке. Для этого необходимо щелкнуть правой кнопкой мыши по объекту и выбрать требуемое действие в контекстном меню. После выбора пункта меню Properties появляется диалог для редактирования объекта - для сущности это будет диалог Entities, для атрибутов - Attributes и т. д.

Панель ModelExplorer позволяет также переносить и копировать объекты. Например, атрибуты (колонки) можно переносить из сущности (таблицы) в сущность (таблицу) внутри ModelExplorer методом drag&drop.

Вкладка Subject Areas (рисунок 11) служит для отображения и редактирования подмножеств модели (SubjectArea). B ней содержится раскрывающийся список подмножеств модели, включающий все объекты подмножеств - хранимые отображения, сущности, атрибуты и др. В списке вкладки SubjectAreas можно проводить такие же манипуляции с объектами, как и во вкладке Model. Например, можно копировать сущность из одного подмножества модели в другое путем перенеса его в списке методом drag&drop.

Рисунок 11 - Вкладка Subject Areas

При создании реальных моделей данных количество сущностей и атрибутов может исчисляться сотнями. Для более удобной работы с большими моделями в ERwin предусмотрены подмножества модели (SubjectArea), в которые можно включить тематически общие сущности. В подмножество модели может входить произвольный набор сущностей, связей и текстовых комментариев. Для создания, удаления или редактирования подмножеств модели нужно вызвать диалог Subject Areas в пункте основного меню Model/Subject Areas (рисунок 12), в котором указывается имя подмножества и входящие в него сущности. Все изменения, сделанные в любой SubjectArea, автоматически отображаются на общей модели. Одна и та же сущность может входить в несколько Subject Area.

Рисунок 12 - Пункт меню Subject Areas

По умолчанию исходная модель получает имя Main Subject Area. При создании нового подмножества следует в диалоге Subject Area Editor (рисунок 13) указать ее имя и список входящих в него объектов (рисунок 14).

Рисунок 13 - Меню Subject Area

Рисунок 14 - Включение сущностей

Примечание: при необходимости включить в новую предметную область связанные сущности, следует использовать кнопку , активирующую диалог глубины включения связанных с выделенным объектом сущностей (рисунок 15).

Рисунок 15 - Включение связанных сущностей

ERwin позволяет разбить модель на несколько Subject Area, каждая из которых может соответствовать определенной задаче, например финансовой, производственной, маркетинговой и т. д. Для перехода от одного подмножества к другому служит список выбора на стандартной панели инструментов (рисунок 16). SubjectArea можно создавать как в логической, так и в физической модели данных.

Рисунок 16 - Выбор предметной области

Дополнительным способом визуализации различий в разрабатываемой базе данных является StoredDisplay (Хранимое отображение). Хранимое отображение – представление подмножества модели, отображающее специфический аспект структуры данных. Одна Subject Area может включать в себя несколько хранимых отображений. В хранимое отображение входят те же самые сущности и связи, что и в Subject Area, но они могут по-разному располагаться на экране, иметь разные уровни отображения, различный масштаб и цвет объектов или фона.

Для создания хранимого отображения служит диалог Stored Displays пункта основного меню Format/Stored Display Settings (рисунок 17).

При определении нового хранимого отображения следует задать его имя, автора, описание и свойства как для логической (рисунок 18), так и для физической модели (рисунок 19).

Примечание 1: При создании Subject Area в нее может не входить либо родительская, либо дочерняя сущность. По умолчанию связи с сущностями, которые не вошли в Subject Area ("висячие связи"), не показываются. Для отображения таких связей следует включить опцию ShowDanglingRelationships во вкладке General диалога Stored Displays.

Примечание 2: Хранимое отображение позволяет отобразить линии связей не только ортогональными, но и диагональными. Для представления связей диагональными линиями следует во вкладке General выбрать опцию Diagonal (по умолчанию установлена опция Orthogonal).

Рисунок 17 - StoredDisplay Settings

Рисунок 18 - Параметры логической модели

Рисунок 19 - Параметры физической модели

Для переключения между хранимыми отображениями служат вкладки в нижней части диаграммы (рисунок 20).

Рисунок 20 - Переключение отображений

Action Log Pane отображает список всех действий, которые были совершены в процессе создания диаграммы баз данных, а Advisories Pane выводит подсказки относительно действий, которые можно совершить в текущий момент.

Создание логической ER-модели базы данных

На сегодняшний день одним из самых популярных методов моделирования баз данных является ERmodeling («сущность-связь»). ER моделирование даёт абстрактную модель предметной области, используя следующие основные понятия: сущности (entities), взаимосвязи (relationships) между сущностями и атрибуты (attributes) – для представления свойств сущностей и взаимосвязей. Результатом ER моделирования является ER-модель, которая представляется с помощью диаграмм, являющихся графической нотацией (системой отображения) для абстрагирования данных в виде сущностей, взаимосвязей и атрибутов.

Сущности предметной области являются результатом абстрагирования реального объекта путём выделения и фиксации набора его свойств. Также их можно определить как событие или концепцию, информация о которых должна сохраняться.

Как правило, сущность обозначается именем существительным естественного языка в единственным числе и с чётким смысловым значением.

Примечание 1: следует избегать технических наименований.

Каждая сущность является множеством подобных объектов, называемых экземплярами. Каждый экземпляр индивидуален и должен отличаться ото всех остальных экземпляров. Сущность описывается с помощью данных, именуемых свойствами или атрибутами.

Как правило, атрибуты являются определениями в высказываниях о сущности и обозначаются именами существительными естественного языка в единственном числе и с чётким смысловым значением.

Примечание 2: соблюдение этого правила позволяет частично решить проблему нормализации уже на этапе определения атрибутов.

Для создания ER-диаграмм обычно используют одну из двух наиболее распространённых нотаций:

1. Integration DEFinition for Information Modeling (IDEF1X).

Эта нотация была разработана для армии США и является федеральным стандартом. Кроме того, она является стандартом в ряде международных организаций (НАТО, Международный валютный фонд и т.д.).

2. Information Engineering (IE).

Данная нотация разработана Мартином Финкельштейном и используется преимущественно в промышленности.