Концептуальное моделирование фактографических БД
В последние годы получило развитие направление, являвшееся предметом активных исследований в конце 70-х - начале 80-х годов, - семантическое, или концептуальное, моделирование в базах данных. Его основная цель - организация интерфейса проектировщика, а также конечного пользователя с информационной системой на уровне представлений о предметной области (ПО), а не на уровне структур данных. Интерес к этому направлению возрос в связи с развитием средств автоматизированного проектирования БД на основе CASE-технологий.
В настоящее время определился основной подход к решению задач семантического моделирования в базах данных. Он заключается в выделении двух уровней моделирования: уровня концептуального моделирования ПО и уровня моделирования собственно базы данных.
На верхнем уровне осуществляется переход от неформализованного описания ПО и информационных потребностей конечного пользователя к их формальному выражению с помощью специальных языковых средств. На нижнем - преобразование концептуальной модели ПО в схему БД и нормализация схемы БД.
Таким образом, цель моделирования данных состоит в обеспечении разработчика ЭИС концептуальной схемой базы данных в форме одной модели или нескольких локальных моделей, которые относительно легко могут быть отображены в любую систему баз данных. В настоящее время концептуальная модель БД чаше всего описывается в виде ER-модели, основными понятиями которой являются сущности и связи.
|
|
Модель данных описывается в виде диаграммы «сущность-связь» (ER-диаграммы), которая представляет собой набор множества объектов и их характеристик, а также взаимосвязей между ними, нужных для выявленных данных, которые в дальнейшем используются функциями проектируемой системы.
Сущность — представляет собой множество экземпляров реальных или абстрактных объектов, которые обладают общими свойствами (атрибутами).
Отношение - связь между двумя и более сущностями.
Независимая сущность - представляет независимые данные.
Зависимая сущность - представляет данные, которые зависят от других сущностей.
Методология IDEF1X.
Процесс моделирования в Erwin базируется на методологии проектирования реляционных баз данных IDEF1X.
Основными элементами IDEFIX являются сущности, атрибуты и связи.
Каждая сущность является множеством подобных индивидуальных объектов, называемых экземплярами. Каждый экземпляр индивидуален и должен отличаться от всех остальных экземпляров. Атрибут выражает определенное свойство объекта. Атрибут или группа атрибутов, которые идентифицируют сущность, называется первичным ключом. С точки зрения БД (физическая модель) сущности соответствует таблица, экземпляру сущности - строка в таблице, а атрибуту - колонка таблицы.
|
|
Сущности изображаются в виде прямоугольников. Имя сущности показывается над прямоугольником, изображающим сущность, список атрибутов сущности - внутри прямоугольника. Список разделен горизонтальной чертой, выше которой расположены атрибуты первичного ключа, ниже - неключевые атрибуты.
В IDEF1X также различают зависимые и независимые сущности. Тип сущности определяется ее связью с другими сущностями. Зависимая сущность изображается прямоугольником со скругленными углами.
Идентифицирующая связь устанавливается между независимой (родительский конец связи) и зависимой (дочерний конец связи) сущностями. Зависимая сущность изображается прямоугольником со скругленными углами (сущность Заказ на рис.7.1.). Экземпляр зависимой сущности определяется только через отношение к родительской сущности, т.е. в структуре на рис.7.1. информация о заказе не может быть внесена и не имеет смысла без информации о клиенте, который его размещает. При идентифицирующей связи атрибуты первичного ключа родительской сущности переносятся в состав первичного ключа дочерней сущности. В дочерней сущности новые атрибуты помечаются как внешний ключ -(FK).
|
|
На практике поля связи часто заранее включаются в атрибуты дочерней сущности. При этом сразу можно определить, будут ли поля связи входить в первичный ключ дочерней сущности и таким образом сразу решается вопрос о виде связи: если внешние ключи входят в состав первичного ключа, то связь идентифицирующая, в противном случае - связь неидентифицирующая.
При установлении неидентифицирующей связи (рис.7.2) дочерняя сущность остается независимой, а атрибуты первичного ключа родительской сущности мигрируют в состав неключевых компонентов родительской сущности. Неидентифицирующая связь служит для связывания независимых сущностей.
Экземпляр сущности Сотрудник может существовать безотносительно к какому-либо экземпляру сущности Отдел, т. е. сотрудник может работать в организации, не числясь в каком-либо отделе.
Идентифицирующая связь показывается сплошной линией с жирной точкой на дочернем конце связи, неидентифицирующая - пунктирной.
На логическом уровне можно установить идентифицирующую связь один-ко-многим, связь многие-ко-многим анеидентифицирующую связь один-ко-многим.
Дата добавления: 2018-02-15; просмотров: 682; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!