Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
24
Добавлен:
13.03.2015
Размер:
48.13 Кб
Скачать

Лекция№6 Модели данных.

Семантическое моделирование.

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

Другими словами это описание схемы на высоком уровне, независимо от конкретной целевой СУБД.

Модель является представлением «реального мира», объектов и событий, а также существующих связей между ними. Это некоторая абстракция в которой акцент делается на самых важных и необходимых аспектах деятельности организации. Таким образом, модель данных – представляет саму организацию.

Модель данных можно рассматривать как сочетание трех компонентов;

  1. структурная часть, то есть набор правил, по которым может быть построена БД.

  2. Управляющая часть, определяющая типы допустимых операций с данными ;

  3. Набор ограничений поддержки целостности данных, гарантирующих корректность используемых данных.

Цель построения модели заключается в представлении данных в понятном виде.

Применительно к трехуровневой архитектуре ANSI/SPARC можно выделить три связанных модели данных:

  1. внешнюю модель данных, отображающую представление каждого существующего в организации типа пользователей, которую называют предметной областью;

  2. концептуальную модель данных, отображающую логическое представление о данных не зависимо от типа выбранной СУБД;

  3. внутреннюю модель данных, отображающую концептуальную схему определенным образом, понятным выбранной целевой СУБД.

Очень часто используются три категории моделей данных:

- объектные модели данных;

- модели данных на основе записей;

- физические модели данных.

Первые две используются для описания данных на концептуальном и внешнем уровнях, а последняя на внутреннем

Объектные модели данных.

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

Сущность – это отдельный элемент организации, который должен быть представлен в БД.

Атрибут – свойство, которое описывает некоторый аспект объекта и значение которого следует зафиксировать.

Связь – это ассоциативное отношение между сущностями.

Наиболее общие типы объектных моделей данных:

  1. модель типа «сущность-связь» или ER-модель;

  2. семантическая модель, то есть модель которая несет большую смысловую нагрузку, чем просто значения данных;

  3. функциональная модель;

  4. обектно-ориентированная модель.

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

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

Типы сущностей – объект или концепция, которые характеризуются на данном предприятии как имеющие независимое существование.

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

Сущность- экземпляр типа сущности, который может быть идентифицирован уникальным образом.

Типы сущности можно классифицировать как сильные и слабые.

Слабый тип сущности – тип сущности, существование которого зависит от какого-то другого типа сущности.

Сильный тип сущности – тип сущности, существование которого не зависит от какого-то другого типа сущности.

Сильная сущность представлена на диаграмме в виде прямоугольника с именем сущности внутри него, слабый тип сущности – в виде прямоугольника с двойным контуром.

Атрибут – свойства типа сущности или типа связи.

Атрибуты сущности содержат значения, описывающие каждую сущность. Значения атрибутов представляют основную часть сведений, сохраняемых в БД.

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

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

Атрибуты делятся на простые и составные, однозначные и многозначные, производные.

Простой атрибут – атрибут состоящий из одного компонента с независимым существованием.

Составной атрибут – атрибут, состоящий из нескольких компонентов, каждый из которых характеризуется независимым существованием.

Однозначный атрибут – атрибут, который содержит одно значение для одной сущности.

Многозначный атрибут – атрибут, который содержит несколько значений для одной сущности.

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

На диаграмме атрибуты представлены в виде эллипсов, присоединенных линиями к соответствующей сущности.

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

Ключи могут быть:

  1. потенциальный;

  2. первичный;

  3. составной.

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

Первичный ключ – потенциальный ключ, который выбран в качестве первичного ключа.

Составной ключ – потенциальный ключ, который состоит из двух и более атрибутов.

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

Связь – ассоциация между сущностями, включающая по одной сущности из каждого участвующего в связи типа сущностей.

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

Связь на диаграммах представляется в виде ромбиков с указанием на нем имени связи. Ромбик с двойным контуром указывает на связь сильной сущности со слабой сущностью, которая от него зависит.

Охваченные некоторой связью сущности называются участниками связи. Количество участников в некоторой связи называется степенью этой связи.

Рекурсивная связь ( или унарная связь) – когда одна и та же сущность участвует несколько раз и в разных ролях.

Структурные ограничения.

Показатель кардинальности – описывает количество возможных связей для каждой из сущностей-участниц.

Наиболее распространенными являются бинарные связи с показателем кардинальности 1:1, 1:М или М:М.

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

Существует два варианта участия сущности в связи: полное или частичное.

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

На диаграмме полное участие обозначается двойной линией, частичное – одинарной.

EER- модель

С появлением новых типов приложений БД, таких как инструменты проектирования (CAD), инструменты автоматизированной подготовки производства (CAM), инструменты автоматизированного проектирования и создания программ (CASE) основных понятий ER- моделирования оказалось недостаточно, в связи с этим в исходную модель добавлены концепции специализации/генерализации и категоризации, такая модель называется EER- модель ( или расширенная ER- модель).

Введенные концепции тесно связаны с понятиями подкласса, суперкласса и процессом наследования атрибутов.

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

Подкласс - тип сущности, который исполняет отдельную роль, а также является членом суперкласса.

Связь между суперклассом и подклассом относится к типу 1:1 и называется связью «суперкласс/подкласс».

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

Специализация – это процесс увеличения различий между отдельными членами типа сущности за счет выделения их отличительных характеристик.

Генерализация – процесс сведений различий между сущностями к минимуму путем выделения общих характеристик.

На процедуры специализации и генерализации можно наложить определенные ограничения:

  1. ограничения непересечения – если подклассы некоторой специализации не пресекаются, то каждая отдельная сущность может быть членом только одного из подклассов данной специализации. (Для представления непересекающейся специализации используется символ «d», который располагается в центре кружка, соединяющего подклассы данного суперкласса.) Если подклассы специализации пересекаются, в таком случае сущность может быть членом сразу нескольких подклассов специализации. (Для представления пересекающейся специализации используется символ «о», который располагается в центре кружка, соединяющего подклассы данного суперкласса);

  2. ограничения участия – оно может быть полным или частичным. Специализация с полным участием означает, что каждая сущность суперкласса должна быть членом подкласса этой специализации. (Полное участие обозначается двойной линией между суперклассом и кружком специализации). Специализация с частичным участием означает, что сущность не обязательно должна быть членом любого подкласса. Ограничения пересечения и участия принято делить на четыре категории:

1. непересекающиеся полные;

2. непересекающиеся частичные;

3. пересекающиеся полные;

4. пересекающиеся частичные.

Категоризация – моделирование одного из подклассов со связью, которая охватывает несколько разных суперклассов.

Подкласс, создаваемый моделированием связи «суперкласс/подкласс», включающую несколько разных суперклассов, называют категорией.

Линия соединяющая подкласс – категорию с кружком категоризации помечется символом «» - принадлежность множеству, а в кружке категоризации помещается символ объединения «».

Основная литература: 1[259-344, 182-219]

1. Что называется моделью данных?

2. В чем заключается цель построения модели?

3. Дайте основные понятия объектной модели данных.

4. В чем заключаются основные концепции модели «сущность-связь»?

5. Для чего была введена EER- модель? Перечислите основные понятия существующие в этой модели.

Соседние файлы в папке Новые лекции