Модель сущность-связь


Модель сущность-связь (или модель ER ) описывает взаимосвязанные вещи, представляющие интерес в конкретной области знаний. Базовая модель ER состоит из типов сущностей (которые классифицируют интересующие вещи) и определяет отношения, которые могут существовать между сущностями (экземплярами этих типов сущностей).

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

Моделирование сущность-связь было разработано для базы данных и дизайна Питером Ченом и опубликовано в статье 1976 года [1] с вариантами идеи, существовавшей ранее. [2] Некоторые модели ER показывают объекты супер- и подтипов, связанные отношениями обобщения-специализации, [3] и модель ER также может использоваться в спецификации предметно-ориентированных онтологий .

Модель E-R обычно является результатом систематического анализа для определения и описания того, что важно для процессов в области бизнеса. Он не определяет бизнес-процессы; он представляет только схему бизнес-данных в графической форме. Обычно его рисуют в графической форме в виде прямоугольников ( сущностей ), соединенных линиями ( отношениями ), которые выражают ассоциации и зависимости между сущностями. Модель ER также может быть выражена в словесной форме, например: одно здание может быть разделено на ноль или более квартир, но одна квартира может находиться только в одном здании.

Сущности могут характеризоваться не только отношениями, но и дополнительными свойствами ( атрибутами ), к которым относятся идентификаторы, называемые «первичными ключами». Диаграммы, созданные для представления атрибутов, а также сущностей и отношений, могут называться диаграммами сущность-атрибут-связь, а не моделями сущность-связь.

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


Диаграмма отношений объект-атрибут для MMORPG с использованием нотации Чена.
Два связанных объекта
Сущность с атрибутом
Связь с атрибутом
Различные методы представления одного и того же отношения «один ко многим». В каждом случае диаграмма показывает взаимосвязь между человеком и местом рождения: каждый человек должен был родиться в одном и только одном месте, но в каждом месте могло родиться ноль или более людей.
Два связанных объекта, показанные с использованием нотации Вороньей лапки. В этом примере показана необязательная связь между Artist и Song; символы, наиболее близкие к сущности песни, представляют «ноль, один или много», тогда как у песни есть «один и только один» исполнитель. Таким образом, первое читается как «Артист (может) исполнять «ноль, одну или много» песен».