- •Основы систем управления базами данных
- •2.1. Традиционный подход к организации данных
- •2 .2. Система баз данных
- •2.2.1. Данные
- •2.2.2. Аппаратное обеспечение
- •2.2.2. Программное обеспечение
- •2.2.4. Пользователи
- •2.2. Преимущества и недостатки современного подхода к организации данных
- •2.4. Классификация систем баз данных
- •2.5. Архитектура клиент/сервер
- •2.5.1. Компоненты приложений клиент/сервер
- •2.5.2. Разделение клиента и сервера
- •2.5.2. Преимущества и перспективы системы клиент/сервер
- •2.6. Общие понятия реляционного подхода к организации данных
- •2.6.1. Базовые понятия реляционных баз данных
- •Тип данных
- •Отношение
- •2.6.2. Общая характеристика реляционной модели данных
- •2.6.2. Манипулирование данными с помощью языка запросов sql
- •2.7. Основы проектирования реляционных баз данных
- •2.7.1. Основные требования при проектировании бд
- •2.7.2. Основы классической методологии проектирования бд
- •2.7.2. Основные этапы проектирования базы данных
- •2.7.4. Обеспечение свойств бд в процессе проектирования
- •2.8. Проектирование реляционных баз данных с использованием принципов нормализации
- •2.8.1. Первая нормальная форма
- •2.8.2. Вторая нормальная форма
- •2.8.2. Третья нормальная форма
- •2.9. Семантическое моделирование данных. Диаграммы «сущность–связь»
- •2.9.1. Основные понятия
- •2.9.2. Методология idef1
- •2.10. Информационное моделирование с помощью case-средства eRwin
- •2.10.1. Общая характеристика программы eRwin
- •2.10.2. Этапы построения информационной модели в eRwin
- •2.11. Проектирование базы данных доменного производства
- •2.11.1. Концептуальное и логическое проектирование
- •Характеристика вспомогательных сущностей
- •Данные по доменному переделу, приведенные
- •2.11.2. Физическая реализация информационной модели
- •2.12. Контрольные вопросы
2.9. Семантическое моделирование данных. Диаграммы «сущность–связь»
2.9.1. Основные понятия
Большинство проектировщиков современных информационных систем используют реляционную модель организации данных. В реляционной базе данных все данные представлены исключительно в формате таблиц или, в терминах реляционной алгебры, – отношений. Таблица в реляционной алгебре – это неупорядоченное множество записей (строк), состоящих из одинакового набора полей (столбцов). Каждая строка таблицы характеризует некий объект предметной области, а каждый столбец – одну из его характеристик. Совокупность таких связанных таблиц и составляет реляционную базу данных, при этом таблицы полностью равноправны, т.е. между ними не существует никакой иерархии.
Реляционная модель является простейшей и наиболее привычной для пользователя формой представления данных, однако разработка реляционной БД в терминах плоских таблиц часто представляет собой очень сложный и неудобный для проектирования процесс. Ограниченность реляционного подхода при разработке информационной модели предметной области проявляется, главным образом, в отсутствии достаточных средств для представления смысла (семантики) данных. Семантика реальной предметной области должна в этом случае представляться в голове проектировщика независимым от модели образом.
Потребности проектировщиков баз данных в более удобных и мощных средствах моделирования предметной области вызвали развитие семантических моделей данных. Главным назначением семантических моделей является обеспечение возможности выражения смысла данных реальной предметной области.
Семантическое моделирование широко используется на начальной стадии проектирования базы данных, а именно при разработке ее концептуальной модели. Ранее было отмечено, что концептуальная модель БД отражает наиболее важные с точки зрения пользователей информационные объекты предметной области и связи между ними безотносительно к конкретным программным средствам ее реализации, т.е. к СУБД. В дальнейшем концептуальная модель (схема) преобразуется к реляционной (или какой-нибудь другой) схеме под управлением методик, в которых четко оговорены все этапы такого преобразования.
Одной из наиболее распространенных семантических моделей данных является модель «сущность–связь» (Entity–Relationship), или ER-модель, которая впервые была предложена П.Ченом в 1976 году. Моделирование предметной области базируется на использовании графических диаграмм, или ER-диаграмм (Entity–Relationship Diagrams). Преимуществом такого подхода является наглядность представления концептуальных схем баз данных, благодаря чему ER-модели получили широкое распространение в компьютерных системах автоматизированного проектирования баз данных, или CASE-средствах (Computer Aided System Engineering).
Базовыми понятиями ER-модели являются «сущность», «связь» и «атрибут».
Сущность (Entity) – это реальный или представляемый объект (предмет или явление), имеющий существенное значение для рассматриваемой предметной области, о котором необходимо хранить информацию. Сущности именуются обычно существительными, например «Агрегат», «Параметры», «Шихтоподача», «Выпуск». Для уточнения предметной области к существительным могут добавляться определения, например «Металлургический агрегат», «Технологические параметры» и т.д. В литературе можно встретить более строгое определение сущности, под которой понимают множество индивидуальных объектов – экземпляров, причем каждый экземпляр сущности должен быть отличим от любого другого экземпляра этой же сущности. С этой целью каждая сущность должна обладать одним или несколькими характеристиками (атрибутами), которые однозначно идентифицируют каждый экземпляр сущности. Это требование аналогично требованиям отсутствия одинаковых строк в реляционной таблице. На диаграммах ER-модели сущность представляется в виде прямоугольника, содержащего имя сущности (рис. 2.22).
Связь
(Relationship) – это именованная ассоциация,
функциональная зависимость между двумя
сущностями, значимая для рассматриваемой
предметной области. В этом случае каждый
экземпляр одной сущности ассоциирован
с произвольным (в том числе и нулевым)
количеством экземпляров второй сущности
и наоборот. На ER-диаграммах связь
представляется в виде линии, связывающей
две сущности. Связи может даваться имя,
выражаемое оборотом глагола и помещаемое
возле линии связи. При этом в месте
«стыковки» связи с сущностью используется
трехточечный вход в прямоугольник
сущности, если для этой сущности в связи
могут использоваться много экземпляров
сущности, и одноточечный вход, если в
связи может участвовать только один
экземпляр сущности. Обязательный конец
связи изображается сплошной линией,
необязательный – прерывистой (рис.
2.24).
На рисунке 2.25 приведен пример связи между двумя сущностями «Технологический процесс» и «Технологический агрегат». Смысл данной связи можно выразить устно следующей трактовкой:
каждый технологический процесс осуществляется в одном или более технологических агрегатах;
каждый технологический агрегат служит для осуществления одного и только одного технологического процесса.
Атрибутом
(Attribute) называется любая характеристика
сущности, значимая для рассматриваемой
предметной области и предназначенная
с общем случае для классификации,
идентификации, количественной
характеристики и выражения состояния
сущности. Другими словами, атрибут
выражает некоторое отдельное, интересующее
пользователя свойство сущности, которое
характеризует ее экземпляр. Отдельный
атрибут определяется типом (числовой,
текстовый, логический, временной и др.),
а также значением, которое он принимает.
Например, при описании доменного процесса
в терминах ER-модели сущность «Выпуск
чугуна» можно характеризовать четырьмя
атрибутами: «Номер печи», «Номер выпуска»,
«Время начала выпуска» и «Время окончания
выпуска». Два первых атрибута имеют
целый тип и служат для идентификации,
т.е. однозначного определения какого-либо
выпуска на конкретной печи, а остальные
два имеют тип дата и предназначены для
его количественной оценки, в частности
для расчета продолжительности процесса
выпуска.
