Отображение модели данных в инструментальном средстве ErWin
Логический уровень - это абстрактный взгляд на данные, когда данные представляются, так как выглядят в реальном мире. Логическая модель данных является универсально и никак не связана с конкретной реализацией СУБД.
Физическая модель данных зависит от конкретной СУБД, фактически являясь отображением системного каталога. В физической модели содержится информация обо всех БД.
Создание модели данных начинается с разработки логической модели. После описания логической модели проектировщик может выбрать необходимую СУБД и ErWin автоматически создаст соответствующую физическую модель. На основе физической модели ErWin может специфицировать системный каталог СУБД или соответствующий SQL-скрипт. Этот процесс называется прямым проектированием.
Уровни логической модели: различают три уровня логической модели. Отличающихся по глубине представления информации о данных:
1. ERD
2. Модель данных, основанная на ключах (KB - Key Based model)
3. Полная атрибутивная модель (FA - Full Attributed model)
ERD диаграмма представляет собой модели данных верхнего уровня. Она включает сущности и взаимосвязи, отражающие основные бизнес правила предметной области. Такая диаграмма не слишком детализирована, в нее включаются основные сущности и связи между ними, которые удовлетворяют основным требованиям, предъявляемым к ИС. Диаграмма сущность - связь может включать связи многие ко многим и не включать описание ключей. Как правило, ERD используется для презентации и обсуждения структуры данных с экспертами предметной области.
Модель данных, основанная на ключах, дает более подробное представление данных. Она включает описание всех сущностей и первичных ключей и предназначена для представления структуры данных и ключей, которые соответствуют предметной области.
Полная атрибутивная модель - наиболее детальное представление структуры данных. Представляет данные в третьей нормальной форме и включает все сущности, атрибуты и связи.
Основные компоненты диаграммы ErWin - это сущности, атрибуты и связи.
Типы сущностей и иерархия наследования.
Различают несколько типов зависимых сущностей:
1. Характеристическая - это зависимая дочерняя сущность, которая связанна только с одной родительской по смыслу, хранит информацию характерных радетельской сущности.
2. Ассоциативная - сущность, связанная с несколькими родительскими сущностями. Такая сущность содержит информацию о связях сущностей.
3. Именующая - это частный случай ассоциативной сущности не имеющий собственных атрибутов, только атрибуты родительских сущностей, мигрированных в качестве внешнего ключа.
4. Категориальная - это дочерняя сущность в иерархии наследования.
Иерархия наследования (категории) представляет собой особый тип объединения сущностей, которые разделяют общие характеристики. Например: в организации работают служащие, занятые полный рабочий день и совместители. Из их общих свойств можно сформировать обобщенную сущность: сотрудник, чтобы представить информацию, общую для всех типов служащих. Специфичная для каждого типа информация может быть расположена в категориальных сущностях (потомках).
Рисунок 17. Определение подкатегорий иерархии
Иерархии категорий делят на два типа:
· полные
- неполные
В полной категории одному экземпляру родового предка обязательно соответствует экземпляр в каком-либо потомке.
Если категория еще не выстроена полностью и в родовом предке могут существовать экземпляры, которые не имеют соответствующих экземпляров потомков, то такая категория будет неполной.
Нормализация данных
ErWin не содержит полного ассортимента нормализаций и не может проводить нормализацию автоматически. Однако его возможности облегчают создание нормализованной модели данных. Например: запрет на присвоение неуникальных имен атрибутов в рамках модели, имена ролей атрибутов внешних ключей также облегчают построение нормализованной модели.
Домены
Домен можно определить как совокупность значений, из которых берутся значения атрибутов. Каждый атрибут может быть определен только на одном домене, но на каждом домене может быть определенно множество атрибутов. В понятие домена входит не только тип данных, но и область значений данных.
В ErWin домен может быть определен только один раз и использоваться как в логической, так и в физической модели.
На логическом уровне домены можно описать без конкретных физических свойств, на физическом уровне она автоматически получают специфические свойства, которые можно изменить вручную. Каждый домен может быть описан, снабжен комментарием или свойством, определенным пользователем.