Ответы к экзамену по БД (542444), страница 21
Текст из файла (страница 21)
ERwin сочетает графический интерфейсWindows, инструменты для построения ER-диаграмм, редакторы для создания логического ифизического описания модели данных и прозрачную поддержку ведущих реляционных СУБД инастольных баз данных. С помощью ERwin можно создавать или проводить обратноепроектирование (реинжиниринг) баз данных.Основные этапы проектирования концептуальной модели предметной области иКМ базы данных с использованием CASE-средства ERwin.40.23.ERwin имеет два уровня представления модели - логический и физический.Логический уровень - это абстрактный взгляд на данные, на нем данные представляются так, каквыглядят в реальном мире, и могут называться так, как они называются в реальном мире, например"Постоянный клиент", "Отдел" или "Фамилия сотрудника". Объекты модели, представляемые налогическом уровне, называются сущностями и атрибутами.
Модель данных может быть построена наоснове другой логической модели, например на основе модели процессов . Логическая модельданных является универсальной и никак не связана с конкретной реализацией СУБД.Физическая модель данных, напротив, зависит от конкретной СУБД, фактически являясьотображением системного каталога. В физической модели содержится информация о всех объектахБД.
Поскольку стандартов на объекты БД не существует (например, нет стандарта на типы данных),физическая модель зависит от конкретной реализации СУБД. Следовательно, одной и той желогической модели могут соответствовать несколько разных физических моделей. Если в логическоймодели не имеет значения, какой конкретно тип данных имеет атрибут, то в физической моделиважно описать всю информацию о конкретных физических объектах - таблицах, колонках, индексах,процедурах и т. д. Разделение модели данных на логические и физические позволяет решитьнесколько важных задач.Подуровни логического уровня модели данныхРазличают 3 подуровня логического уровня модели данных, отличающиеся по глубинепредставления информации о данных:• диаграмма сущность-связь (Entity Relationship Diagram (ERD);• модель данных, основанная на ключах (Key Based model (KB);• полная атрибутивная модель (Fully Attributed model (FA).Диаграмма сущность-связь включает сущности и взаимосвязи, отражающие основные бизнесправила предметной области.
Такая диаграмма не слишком детализирована, в нее включаютсяосновные сущности и связи между ними,которые удовлетворяют основным требованиям,предъявляемым к ИС. Диаграмма сущность-связь может включать связи "многие ко многим" и невключать описание ключей. Как правило, ERD используется для презентаций и обсужденияструктуры данных с экспертами предметной области.12Модель данных, основанная на ключах, - более подробное представление данных.
Она включаетописание всех сущностей и первичных ключей и предназначена для представления структурыданных и ключей, которые соответствуют предметной области.Полная атрибутивная модель - наиболее детальное представление структуры данных: представляетданные в третьей нормальной форме и включает все сущности, атрибуты и связи.Подуровни физического уровня модели данныхРазличают два подуровня физического уровня модели данных:•трансформационная модель (Transformation Model);•модель СУБД (DBMS Model).Трансформационная модель содержит информацию для реализации отдельного проекта, которыйможет быть частью общей ИС и описывать подмножество предметной области. ERwinподдерживает ведение отдельных проектов, позволяя проектировщику выделятьподмножество модели в виде предметных областей (Subject Area).
Трансформационнаямодель позволяет проектировщикам и администраторам баз данных лучше представлять, какие объекты базы данных хранятся в словаре данных, и проверить, насколько физическийуровень модели данных удовлетворяет требованиям к ИС.Модель СУБД автоматически генерируется из трансформационной модели и является точнымотображением системного каталога СУБД.
ERwin непосредственно поддерживает эту модельпутем генерации системного каталога.1350.CASE-средство ERwin. Компоненты диаграммы Erwin и основныевиды представления диаграммы. Инструменты для созданиялогической модели БД.40.24.Компоненты диаграммы ERwinОсновные компоненты диаграммы ERwin-это сущности, атрибуты и связи. Каждаясущность является множеством подобных индивидуальных объектов, называемыхэкземплярами. Каждый экземпляр индивидуален и должен отличаться ото всех остальныхэкземпляров. Атрибут выражает определенное свойство объекта. На физическом уровнесущности соответствует таблица, экземпляру сущности - строка в таблице, а атрибуту - колонка таблицы.Сущность можно определить как объект, событие или концепцию, информация о которыхдолжна сохраняться. Сущности должны иметь наименование с четким смысловым значением,именоваться существительным в единственном числе, не носить "технических" наименованийи быть достаточно важными для то го, чтобы их моделир о авть.
Именование сущности вединственном числе облегчает в дальнейшем чтение модели. Фактически имя сущностидается по имени ее экземпляра. Примером может быть сущность Заказчик (но не Заказчики\)с атрибутами Номер заказчика, Фамилия заказчика и Адрес заказчика. На уровнефизической модели ей может соответствовать таблица Customer с колонкамиCustomer_number, Customer_пате и Customer_address.Связь является логическим соотношением между сущностями.
Каждая связь должнаименоваться глаголом или глагольной фразой (Relationship Verb Phrases) (рис. 2.2.14). Имясвязи выражает некоторое ограничение или бизнес-правило и облегчает чтение диаграммы,например:•Каждый КЛИЕНТ <размещает> ЗАКАЗы;•Каждый ЗАКАЗ <выполняется> СОТРУДНИКОМ.Мощность связи (Cardinality) служит для обозначения отношения чис- экземпляровродительской сущности к числу экземпляров дочерней. Различают 4 типа мощности (рис.2.2.18):•общий случай, когда одному экземпляру родительской сущности соответствуют 0, 1или много экземпляров дочерней сущности не помечается каким-либо символом;•символом Р помечается случай, когда одному экземпляру родительской сущностисоответствуют 1 или много экземпляров дочерней сущности (исключено нулевое значение);•символом Z помечается случай, когда одному экземпляру родительской сущностисоответствуют 0 или 1 экземпляр дочерней сущности (исключены множественные значения);•цифрой помечается случай точного соответствия, когда одному экземпляруродительской сущности соответствует заранее заданное число экземпляров дочернейсущности.40.25.Основные виды представлений диаграммыРежим "сущности" служит для удобства обзора большой диаграммы или размещенияпрямоугольников сущностей на диаграмме.Режим "определение сущности" служит для презентации диаграммы .Режим "атрибуты" является основным при проектировании на логическом и физическомуровнях.Режим "первичные ключи" - показываются только атрибуты/колонки, составляющиепервичный ключ.Режим "пиктограммы".
Для презентационных целей каждой таблице может бытьпоставлена в соответствие пиктограмма (bitmap).Режим "показ глагольной фразы". На дугах связей показываются глагольные фразы,связывающие сущности (для логического уровня) или имена внешних ключей (дляфизического уровня).40.26.Инструменты для создания модели в ERwin14редакторы, связанные с сущностью в целом (определение сущности, дополнительнаяинформация, триггеры, индексы, характеристики таблицы, хранимые процедуры, связанные стаблицей);редакторы атрибутов (определение атрибутов, колонки таблицы в физическом представлениимодели, репозитарий средства 4GL, например, расширенные атрибуты в PowerBuilder1551.Сущности и связи в ERwin.
Альтернативные ключи,инвертированные индексы, унификация атрибутов, связикатегоризации.Сущности и связи в ERwinСм. Билет 5240.28.Альтернативные ключиПервичный ключ (primary key) - это атрибут или группа атрибутов, однозначноидентифицирующая экземпляр сущности.В одной сущности могут оказаться несколько атрибутов или наборов атрибутов,претендующих на роль первичного ключа. Такие претенденты называются потепциальпымиключами (candidate key).
Для то го чтобы стать пер вичным, потенциальный ключ долженудовлетворять ряду требований.Уникальность. Два экземпляра не должны иметь одинаковых значений возможного ключа.Компактность. Возможный ключ не должен содержать ни одного атрибута, удалениекоторого не приводило бы к утрате уникальности.Альтернативный ключ (Alternate Key) - это потенциальный ключ, не ставшийпервичным.40.29.Ивертированные индексыПри работе ИС часто бывает необходимо обеспечить доступ к нескольким экземплярамсущности, объединенным каким-либо одним признаком. Для повышения производительностив этом случае используются неуникальные индексы.
ERwin позволяет на уровне логическоймодели назначить атрибуты, которые будут участвовать в неуникальных индексах. Атрибуты,участвующие в неуникальных индексах, называются инверсиоппыми входами (InversionEntries). Inversion Entry - это атрибут или группа атрибутов, которые не определяютэкземпляр сущности уникальным образом, но часто используются для обращения кэкземплярам сущности. ERwin генерирует неуникальный индекс для каждого Inversion Entry.40.30.Унификация атрибутовКомбинирование или объединение идентичных атрибутов называется унификацией.Унификацияпроизводится,посколькуправиланормализациизапрещаютсуществование в одной сущности двухатрибутов с одинаковыми именами.
Внекоторых случаях (рис. 2.2.41) этотрезультат соответствует действительности.Сотрудники работают в отделах, каждыйсотрудник ведет несколько проектов.СущностьОтделсвязанаидентифицирующей связью с сущностямиСотрудник и Проект, ее первичный ключНомеротдела мигрирует в состав первичногоключадочерних сущностей в качестве внешнегоключа.Но сущность Сотрудник, в свою очередь, тоже имеет идентифицирующую связь с сущностьюПроект и атрибуты ее первичного ключа (в том числе Номер отдела-второй раз!) мигрируютв состав первичного ключа сущности Проект.40.27.40.31.Связи категоризацииНекоторые сущности определяют целую категорию объектов одного типа. В ERwin в такомслучае создается сущность для определения категории и для каждого элемента категории, азатем вводится для них связь категоризации.