ВІКІСТОРІНКА
Навигация:
Інформатика
Історія
Автоматизація
Адміністрування
Антропологія
Архітектура
Біологія
Будівництво
Бухгалтерія
Військова наука
Виробництво
Географія
Геологія
Господарство
Демографія
Екологія
Економіка
Електроніка
Енергетика
Журналістика
Кінематографія
Комп'ютеризація
Креслення
Кулінарія
Культура
Культура
Лінгвістика
Література
Лексикологія
Логіка
Маркетинг
Математика
Медицина
Менеджмент
Металургія
Метрологія
Мистецтво
Музика
Наукознавство
Освіта
Охорона Праці
Підприємництво
Педагогіка
Поліграфія
Право
Приладобудування
Програмування
Психологія
Радіозв'язок
Релігія
Риторика
Соціологія
Спорт
Стандартизація
Статистика
Технології
Торгівля
Транспорт
Фізіологія
Фізика
Філософія
Фінанси
Фармакологія


Создание логического и физического уровней модели данных

Модель данных обычно начинают создавать с логического уровня, который представляется сущностями и атрибутами. Логический уровень модели данных является универсальным и не связан с какой-либо конкретной СУБД.

После построения логического уровня можно выбрать необходимую СУБД и создать физический уровень модели, в которой содержится информация обо всех объектах базы данных (таблицах, колонках, индексах, процедурах и т.п.). Для одного логического уровня можно построить несколько разных физических уровней для различных СУБД (Oracle, Informix, Sybase, Ingress и т.д.).

ERwin позволяет создавать модели трех типов: модель, имеющую как логический, так и физический уровни.

В ERwin различают три подуровня логического уровня модели данных, отличающихся по глубине представления информации о данных: диаграмма сущность-связь; модель данных, основанная на ключах; полная атрибутивная модель [20].

Диаграмма сущность-связь (Entity Relationship Diagram (ERD)) включает сущности и взаимосвязи, она не слишком детализирована и в нее включаются основные сущности и связи между ними. ER-диаграмма может включать связи «многие ко многим» и не включать описание ключей. Обычно этот тип диаграммы используется для презентаций и обсуждения структуры данных с заказчиком.

Модель данных, основанная на ключах, включает описание всех сущностей и первичных ключей и обеспечивает более полное представление структуры данных.

Полная атрибутивная модель представляет данные в третьей нормальной форме, включает все сущности, атрибуты и связи. Эта модель обеспечивает наиболее детальное представление структуры данных.

Построение логической модели данных предполагает определение сущностей, атрибутов и первичных ключей. Проектировщик должен таким образом определить хранящуюся информацию в конкретной сущности и в конкретном атрибуте, чтобы обеспечить полную информационную поддержку для выполнения всех функций, заложенных в информационную систему. Поэтому в основе построения ER-модели должна находиться функциональная иерархическая модель (IDEF0-модель), стрелки в которой обозначают информацию, используемую в моделируемой системе.

В общем случае следует исходить из того, что каждой стрелке должна соответствовать либо сущность, либо атрибут сущности. При этом следует учитывать, что информация, которая моделируется в виде одной стрелки в модели процессов, может содержаться в нескольких сущностях и атрибутах модели данных. Например, стрелке «новый товар» будут соответствовать атрибуты «название товара», «цена товара», «производитель товара» и т.п.

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

Проектировщику необходимо учитывать эту неоднозначность информации, определяемую названием стрелок, чтобы обеспечить компактность и непротиворечивость хранения данных. Особенно важно правильно определить сущности. Рекомендуется для каждой возможной сущности задать себе следующие вопросы.

ü Может ли она быть описана, то есть обладает ли какими-либо характерными особенностями (атрибутами)?

ü Существует ли более одного экземпляра этой сущности?

ü Может ли каждый экземпляр этой сущности быть идентифицирован?

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

Следующим шагом построения логической модели данных является определение отношений между сущностями, которые на этом этапе могут быть неспецифическими («многие ко многим»). Главным результатом этой работы является матрица отношений, которая имеет вид следующей таблицы.

Таблица 5

Матрица отношений

 

  Студент Предмет Лектор Аудитория
Студент _______     Ú
Предмет   _______ Ú Ú
Лектор   Ú _______  
Аудитория Ú Ú   _______

 

При наличии возможного отношения между сущностями в точке пересечения соответствующих осей помещается знак Ú. Не следует устанавливать чрезмерное количество отношений между сущностями. Затем производится определение выявленных отношений: указание типа зависимостей, имен, мощности и комментариев. В ходе определения отношений некоторые из них могут отбрасываться, а новые добавляться.

При установлении зависимости отношений между двумя сущностями отношение должно быть проверено в обоих направлениях. Это делается посредством определения мощности на каждом конце отношений. Для правильного определения мощности необходимо предположить существование экземпляра одной сущности, а затем уже определять, сколько экземпляров второй сущности может быть связано с первой. Затем следует повторить анализ, поменяв сущности ролями.

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

Если первичный ключ сущности-потомка содержит все атрибуты внешнего ключа, то сущность-потомок называется зависимой от идентификатора относительно родительской сущности.

Отношение в этом случае называется идентифицирующим, рисуется сплошной линией, а сущность-потомок – с закругленными углами.

Если какие-либо атрибуты внешнего ключа не принадлежат первичному ключу сущности-потомка, то сущность-потомок является независимой от идентификатора относительно родительской сущности. Отношение называется неидентифицирующим, рисуется пунктирной линией, а сущность-потомок рисуется с прямыми углами.

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

Построение ER-диаграмм осуществляется с помощью методологии IDEF1Х, которая реализована на пакетах Design/IDEF, ERwin и других. Эта методология имеет ряд особенностей по сравнению с другими ER-диаграммами. Отношение связи может дополнительно определяться с помощью указания мощности отношения, которая определяет, какое количество экземпляров сущности-потомка может существовать для каждого экземпляра сущности-родителя.

Например, каждый экземпляр сущности-родителя может иметь 0,1 или более связанных с ним экземпляров сущности-потомка. Каждый экземпляр сущности-родителя может иметь не менее одного связанного с ним экземпляра сущности-потомка (отношения отмечаются на диаграмме символом Р) или другой вариант: каждый экземпляр сущности-родителя имеет не более одногосвязанного с ним экземпляра сущности-потомка (около прямой отношения ставится Z). И наконец, каждый экземпляр сущности-родителя связан с некоторым фиксированным числомэкземпляров сущности-потомка (это число размещается рядом с прямой, представляющей графическое отображение отношения).

В методологии IDEF1Х применяется также отношение категоризации, когда некоторые объекты являются категориями других существующих объектов, а следовательно, и соответствующие сущности в некотором смысле являются категориями других сущностей. Например, у сущности служащий могут быть две категории: штатный_служащий и служащий_почасовик, которые отличаются информацией о зарплате. В IDEF1Х-модели они связаны друг с другом через категориальное отношение.

Существует понятие отношения полной и неполной категоризации. Отношение полной категоризации – это отношение между двумя или более сущностями, в котором каждый экземпляр одной сущности, называющейся общей сущностью, связан в точности с одним экземпляром одной и только одной из других сущностей, называемых сущностями-категориями. Каждый экземпляр общей сущности и связанный с ним экземпляр одной из категорных сущностей изображают один и тот же предмет реального мира и поэтому обладают одним и тем же уникальным идентификатором.

Сущности-категории, связанные с одной общей сущностью, всегда являются взаимоисключающими. То есть экземпляр общей сущности может соответствовать экземпляру только одной сущности-категории: служащий не может быть одновременно и штатным, и почасовым.

Отношение называется отношением неполной категоризации, если существует экземпляр общей сущности, не связанный ни с каким экземпляром из сущностей категорий.

В экземпляре общей сущности значение некоторого атрибута определяет, с каким из возможных сущностей-категорий он связан. Этот атрибут называется дискриминатором отношения категоризации. В нашем примере дискриминатором может быть атрибут INSTRUCTOR-TYPE. Дискриминатор отношения полной категоризации изображается в виде круга, подчеркнутого двумя линиями. Однократное подчеркивание означает неполноту множества категорий. Для сущности-категории мощность не указывается, так как она всегда равна 0 или 1, и всегда зависима от идентификатора.

 

 

 

Рис. 5.10. Отношение полной категоризации

 

Для построения ER-модели (рис. 5.11) необходимо запустить ERwin. В режиме создания новой модели в диалоге Create Model следует выбрать тип новой модели: логический, физический или логический/физический. Для создания логических моделей ERwin поддерживает две международно признанные системы обозначений (нотации): Integration Definition for Information Modeling (IDEF1Х) и Information Engineering (IE). Переключение между нотациями можно сделать после выполнения команды Model/Model Properties в диалоге Model Properties на вкладке Notations.

 

 

Рис. 5.11. Фрагмент ER-диаграммы

 

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

Для изучения панелей инструментов ERwin и принципов моделирования данных можно воспользоваться обучающей программой, которая содержит 18 уроков и запускается командой Help/Tutorial.

Для создания сущности необходимо щелкнуть на иконке «сущность» на панели инструментов, затем щелкнуть на том месте диаграммы, где необходимо расположить новую сущность. Щелкнув правой клавишей мыши по сущности, вызывают контекстное меню, в котором выбирают пункт Entity Properties и в появившемся диалоговом окне определяется имя, описание и комментарии сущности.

Для описания атрибутов сущности следует щелкнуть правой клавишей мыши по сущности и в появившемся контекстном меню выбрать пункт Attributes. В диалоговом окне можно задавать новые атрибуты, переименовывать и удалять существующие, включать атрибуты в состав первичного или альтернативного ключа. Для большей наглядности диаграммы каждый атрибут можно связать с иконкой, используя список выбора Icon на вкладке General.

Для создания новой связи необходимо щелкнуть левой клавишей мыши по нужной кнопке на панели инструментов (идентифицирующая, не идентифицирующая или связь «многие по многим»), затем щелкнуть сначала по родительской, а потом по дочерней сущности. Редактирование связи осуществляется вызовом контекстного меню щелчком правой клавиши мыши по связи и выбором пункта меню Relationship Properties. Во вкладке General появившегося диалога можно задать мощность, имя и тип связи.

 

© 2013 wikipage.com.ua - Дякуємо за посилання на wikipage.com.ua | Контакти