Автор работы: Пользователь скрыл имя, 19 Декабря 2012 в 16:47, лекция
База данных (БД) - это совокупность интегрированных, не дублированных и логически взаимосвязанных данных, организованных на машинном носителе средствами СУБД в соответствии со структурами данных и моделью, которые она поддерживает. Создание базы - определение её структуры, загрузка и корректировка данных, а также многоаспектный доступ обеспечиваются эффективными средствами СУБД. На основе данных из БД могут решаться все задачи ИС. БД, как правило, отражает некоторую логическую модель взаимосвязанных информационных объектов, представляющих конкретную предметную область.
3) Связь m:n (многие-ко-многим) предполагает, что в каждый момент времени одному экземпляру информационного объекта А соответствует любое количество экземпляров объекта В и наоборот. Отношения данного типа обычно используются на ранних этапах проектирования с целью прояснения ситуации. В дальнейшем каждое из таких отношений должно быть преобразовано в комбинацию отношений типов 1 и 2 (возможно, с добавлением вспомогательных ассоциативных сущностей и с введением новых отношений).
Для отображения различных типов связей используются следующие обозначения (рисунок 13).
Вид отношения |
Стиль изображения |
1:1 |
|
1:n |
|
m:n |
|
Рисунок 13 - Изображение типов связей между объектами
На основе полученной логической модели осуществляется физическое проектирование данных. Физическим аналогом сущности в будущей базе данных является таблица, а физическим аналогом атрибута — поле этой таблицы. Результатом этого процесса является физическая модель, содержащая полную информацию, необходимую для генерации всех необходимых объектов в базе данных. Для СУБД, поддерживающих системный каталог, физическая модель обычно соответствует его содержимому.
В процессе физического проектирования следует определить наименования таблиц и типы данных для всех полей. Если необходимо, на этом же этапе описываются представления (если таковые будут создаваться) и может быть создан код хранимых процедур. Далее обычно полагается определить, какие именно объекты и как будут создаваться: например, с помощью каких SQL-предложений создаются индексы, с помощью каких объектов – триггеров или серверных ограничений – реализуется ссылочная целостность, создаются ли индексы для альтернативных ключей и т.д.
назад | содержание | дал
3.2. Методики построения ER-моделей
ER-Модель П.Чена
Идеи П.Чена [25, 26] являются своеобразным стандартом в построении ER-моделей. Другие модели могут отличаться набором графических символов, некоторыми особенностями моделирования, но основные правила остались теми же.
Под сущностью понимается "нечто", что можно идентифицировать. Сущности могут попадать в различные типы сущностей, которые на ER-диаграммах изображаются в виде прямоугольников. Реальный мир содержит множество объектов, которые можно четко идентифицировать. Некоторые из них интересны при моделировании, другие - нет. В задачи проектировщика входит отобрать именно те типы сущностей, которые нужны и будущей информационной системе.
Между сущностями могут существовать связи. Связи разделяются на различные типы связей. На диаграммах ER-моделей связи изображаются в виде ромбов, соединенных линиями со связываемыми типами сущностей (рисунок 14).
Рисунок 14 - ER-модель Чена
Символы "m" и "1" около типа связи "РУКОВОДИТЕЛЬ" показывают, что каждый проект имеет только одного руководителя, а каждый сотрудник может руководить несколькими проектами. Символы "m" и "n" около типа связи "УЧАСТНИК" указывают на отношение "многие-ко-многим". Это означает, что в каждом проекте могут участвовать несколько сотрудников, и каждый сотрудник может входить в несколько проектов. Возникновение других видов связей между сущностями, по мнению П. Чена. маловероятно, но возможно. Например, тип связи "БРАК" - это отношение "один-к-одному" между людьми.
Возможны связи между более чем двумя типами сущностей. Эти типы связей проектировщик изображает в виде нескольких бинарных связей или как одну связь.
Сущности и связи имеют
В некотрых случаях атрибут может иметь более одного значения для одной и той же сущности. В этих случаях дуга от сущности к атрибуту помечается как "1:n" и это означает множественность атрибута. Большинство атрибутов имеют единственное значение, поэтому, чтобы не усложнять диаграмму, их дуги не помечаются как "1:1".
Не только сущности имеют атрибуты. Иногда бывают интересны свойства связей. Например, мы хотим узнать, когда сотрудник Х начал работать в данном проекте. "ДАТА НАЧАЛА РАБОТЫ" не является атрибутом сущностей "СОТРУДНИК" или "ПРОЕКТ". Это свойство сразу двух сущностей. В действительности, "ДАТА НАЧАЛА РАБОТЫ" является атрибутом связи "УЧАСТВУЕТ".
П.Ченом был предложен также алгоритм перехода от инфологической к сетевой физической модели. С некоторыми модификациями этот алгоритм может быть использован для проектирования структур реляционных баз данных.
ER-Модель Диго С.М.
При изучении курса проектирования баз данных во многих вузах бывшего СССР. России и СНГ используется инфологическая модель, разработанная Диго С.М. [11, 12]. Ниже приведены основные термины и принципы построения такой модели.
В предметной области в процессе ее обследования и анализа выделяют классы объектов. Классом объектов называют совокупность объектов, обладающих одинаковым набором свойств. В инфологической модели каждый класс объектов должен быть представлен именем.
Объект описывается путем задания значений его свойств. При описании предметной области связи между объектом и его свойствами обычно представляются как односторонние (от объекта к свойству). Кроме типа связи, желательно указывать признак стабильности, а для условных связей - значение условия, при котором данная связь отсутствует.
При построении инфологической модели жесткое деление на объекты и свойства не обязательно. Одна и та же сущность предметной области в одном фрагменте инфологической модели может выступать как свойство объекта, а в другом – как самостоятельный объект (принцип относительности объектов). Интерпретация сущности будет зависеть от точки зрения конкретного пользователя. По мнению Диго С.М. такой подход при правильной однозначной идентификации сущностей не приводит к неоднозначности инфологической модели и позволяет проследить сложные взаимосвязи между сущностями предметной области.
Вместе с тем, подобные действия может позволить себе только опытный проектировщик. Изображение объектов реального мира как в виде сущностей, так и в виде характеристик на разных фрагментах модели затруднит применение средств автоматизации проектирования базы данных и может привести к ошибкам. Следует помнить, что применение "принципа относительности объектов" допустимо скорее всего не на разных фрагментах модели (как считает Диго С.М.), а в разных моделях.
Понятия "наименование атрибута" и его "значение (экземпляр)", так же как и понятия "объект" и "свойство", в методологии Диго С.М. являются относительными. То. что при описании одного объекта является значением атрибута, для другого объекта может являться наименованием атрибута.
Связь между объектом и его свойством может быть различной. Объект может обладать только одним значением какого-то свойства. Например, каждый человек может иметь только одну дату рождения. Такие свойства называются единичными. Для других свойств возможно существование одновременно нескольких значений у одного объекта. Это множественные свойства.
Другой характеристикой связи между объектом и его свойством является признак того, присутствует ли это свойство у всех объектов данного класса, то есть всюду определено, либо оно может отсутствовать у некоторых из объектов. Например, для отдельных служащих может иметь место свойство "УЧЕНАЯ СТЕПЕНЬ", а другие объекты этого класса могут не обладать этим свойством. Назовем такие свойства условными. Те свойства, которые присутствуют у всех объектов класса, называются всюду определенными.
Кроме того, некоторые свойства являются постоянными, их значение не может измениться с течением времени. Такие свойства называются статическими, а те свойства, значение которых может изменяться со временем - динамическими.
Выделяют несколько
Составной объект соответствует отображению отношения "целое - часть". Обобщенный объект отражает наличие связи "род - вид" между объектами предметной области. Объекты, составляющие обобщенный объект называются его категориями.
Объект, относящийся к конкретной категории, характеризуется как свойствами, присущими обобщенному объекту, так и набором свойств, присущих этой категории. Эти свойства называются соответственно родовыми и видовыми. Кроме свойств, присущих каждому объекту класса, в информационной системе могут фиксироваться характеристики, относящиеся не к отдельному объекту, а к совокупности объектов. Например, для класса объектов ЛИЧНОСТЬ могут быть зафиксированы атрибуты СРЕДНИЙ ВОЗРАСТ, ЧИСЛО ОБЪЕКТОВ. Назовем такие свойства интегральными. В инфологической модели для отображения таких свойств класс объектов можно представить как самостоятельный объект со своими свойствами.
Кроме связи "объект - свойство" в инфологической модели необходимо зафиксировать характер связи между объектами. Если между объектами и их свойствами связи семантически однородны (любая связь означает, что объект обладает свойством), то связи между объектами могут быть самыми разнообразными. В инфологической модели эти связи следует именовать. Связи могут быть реализованы на объектах одного класса (унарные), между двумя классами объектов (бинарные) и связи более двух объектов (n-арные связи). Между одними и теми же множествами объектов могут существовать разноименные связи.
Различают связи типа "один-к-одному" (1:1), "один-ко-многим" (1:n), "многие-к-одному" (n:1) и "многие-ко-многим" (m:n). В данной методологии эти типы связей называются степенью связи, но трактовка их такая же как и в других ER-моделях. Кроме степени связи в инфологической модели для характеристики связи между разными сущностями надо указывать так называемый "класс принадлежности". Класс принадлежности объекта должен быть либо обязательным, либо необязательным. Объекты "обязательного" типа всегда входят в рассматриваемую связь. При необязательном классе принадлежности в классе объектов могут быть такие объекты. которые не участвуют в рассматриваемой связи. В большинстве СУБД для отображения каждого из этих видов связей используются специальные конструкции на уровне даталогических моделей, в связи с чем желательно, чтобы все ситуации выявлялись на уровне инфологической модели.
Описание процессов предметной области представлено в виде агрегированного объекта. Например, процесс ПОСТАВКА объединяет в единое действие объекты ПОСТАВЩИК. ПОТРЕБИТЕЛЬ, ПРОДУКЦИЯ. Агрегированный объект именуется обычно существительным, образованным от глагола определяющего процесс.
Инфологическая модель Диго С.М. является графовой и по существу относится к ER-моделям. На диаграммах инфологических моделей используются следующие символы:
- класс объектов - овал (прямоугольник);
- класс простых объектов, входящих в обобщенный - равнобедренный треугольник;
- класс агрегированных объектов - ромб;
- свойство - пунктирный овал (прямоугольник);
- интегральное свойство - двойной пунктирный овал (прямоугольник);
- связи между классами объектов
и свойствами изображаются в
виде дуг со стрелками,
- связи между классами объектов
изображаются в виде дуг, при
этом в случае обязательного
класса принадлежности в
ER-Модель Г. Джексона
В работе [10] изложены основные положения Г. Джексона по построению ER-моделей. Практически весь терминологический аппарат первоначально описывается на примерах из каких-нибудь предметных областей. Затем для самых важных понятий даются определения.
Сущность определяется как некоторый объект, представляющий интерес для организации. Этот объект должен иметь экземпляры, отличающиеся друг от друга и допускающие однозначную идентификацию.
Связь представляет собой "соединение
между двумя или более
Как видим, определения Г. Джексона далеко не формализованы и могут трактоваться очень широко. Автор сам признает, что термины ER-метода не могут быть строго определены, но тем не менее указывает на необходимость их определения и приемлемость использования в тех целях, на которые они рассчитаны.
На диаграммах Г. Джексона сущности изображаются в виде прямоугольников, а связи - в виде ромбов, соединенных линиями с сущностями. Под сущностью могут быть перечислены ее атрибуты, при этом ключевые атрибуты подчеркиваются.