Варианты отображения кардинальности: кардинальность отображается на противоположной (look-across) или на той же стороне (same-side), в зависимости от места размещения символов.
Ограничения кардинальности: это минимальные или максимальные числовые значения, применимые к связи.
Сопоставление с естественным языком
Компоненты ER-модели можно сопоставить с частями речи. Ниже показано, как ER-диаграмма соотносится со схемой разбора предложения:
Язык запросов к базам данных ERROL имитирует конструкции естественного языка. ERROL основан на модифицированной реляционной алгебре (RRA) и работает с ER-моделями, отражая их лингвистические аспекты.
Символы и нотации ER-диаграмм
Ниже приведены примеры различных систем нотации ERD. Дополнительную информацию можно найти на странице «Символы и нотации ER-диаграмм».
Нотация Чена
Нотация «Воронья лапка» (Мартина / инженерии информационных систем)
Нотация Бахмана
Нотация IDEF1X
Нотация Баркера
Некоторые команды используют нотацию UML, когда хотят выразить связи в стиле ER с помощью объектно-ориентированных соглашений. Это не превращает ERD в разновидность UML-диаграммы. Это лишь означает, что нотация UML применяется для описания сущностей, связей и кардинальности. В нотации UML связи отображаются в виде сплошной линии, соединяющей две сущности. Кардинальность указывается прямо на линии (например, 1..1 означает «один к одному», а 1..* — «один ко многим»), а для определения характера связи между сущностей добавляются глагольные фразы (например, «создано кем-то» или «заказано кем-то»).
Примеры
Ниже приведены примеры ER-диаграмм, построенных в каждой из систем.
Концептуальные, логические и физические модели данных
ER-модели и модели данных обычно создаются на трех уровнях детализации:
Концептуальная модель данных
Эта модель предоставляет наиболее общий взгляд на систему с минимальной детализацией. Ее ценность заключается в фиксации общего масштаба модели и отображении архитектуры системы. Если масштаб системы невелик, начните с логической модели.
Логическая модель данных
Данная модель содержит больше деталей, чем концептуальная, и определяет операционные и транзакционные сущности. Логическая модель не зависит от конкретных технологий реализации.
Физическая модель данных
На основе одной логической модели разрабатывается одна или несколько физических моделей. Физические модели содержат достаточный объем технических деталей для непосредственного создания и развертывания реальной базы данных.
По мере масштабирования систем бывает трудно уместить все операционные детали на одной читаемой схеме. При необходимости распределяйте информацию по нескольким диаграммам и создавайте разные уровни ERD. Небольшие системы, напротив, легко представить на одном холсте.
Ограничения ER-диаграмм и моделей
ER-диаграммы и модели подходят не для всех типов баз данных. Вот несколько причин, почему этот визуальный формат не всегда оптимален:
-
Не для неструктурированных данных: если данные четко не разнесены по полям, строкам или столбцам, польза от ER-диаграмм будет минимальной. Это относится и к полуструктурированным данным, так как для моделирования подойдет лишь их часть.
-
Сложность интеграции с существующей базой данных: использование ER-моделей для интеграции с уже созданной базой данных бывает затруднительным из-за различий в архитектуре.
Соответственно, если ваш основной уровень хранения данных является нереляционным, вам потребуется другой подход к моделированию, отличный от классической ER-диаграммы.
Как создать базовую ER-диаграмму
-
Цель и масштаб: определите цель и масштаб анализируемого или моделируемого объекта.
-
Сущности: определите задействованные сущности. Нарисуйте их в виде прямоугольников (или других фигур в соответствии с выбранной нотацией) и подпишите именами существительными.
-
Связи: определите, как сущности связаны друг с другом. Проведите линии между ними для обозначения связей и подпишите их. Отсутствие связей у некоторых сущностей — это абсолютно нормально. В разных системах нотации связи обозначаются внутри ромба, прямоугольника или прямо поверх соединительной линии.
-
Атрибуты: добавьте детализации, указав ключевые атрибуты сущностей. Атрибуты чаще всего изображаются в виде овалов.
-
Кардинальность: укажите тип связи («один к одному», «один ко многим» или «многие ко многим»).
При создании схемы крупной системы разделите работу на несколько диаграмм (например, один концептуальный обзор и одна или несколько физических моделей), чтобы сохранить читаемость визуальных материалов.
Как создать ER-диаграмму в Lucidchart
-
Откройте новый документ Lucidchart
Создайте диаграмму с нуля или сэкономьте время, выбрав один из готовых шаблонов ER-диаграмм в Lucidchart. Главное — обеспечить уровень детализации, соответствующий вашим целям. В зависимости от задачи выберите концептуальную, логическую или физическую модель.
-
Включите библиотеки фигур для ER-диаграмм
Нажмите «Другие фигуры» в левой части редактора и убедитесь, что в списке библиотек фигур отмечен пункт «Сущность-связь» (Entity Relationship).
-
Перетаскивайте фигуры на холст
Добавляйте фигуры на холст для обозначения всех сущностей и связей: кликните по нужной фигуре и перетащите ее на рабочее поле. Убедитесь, что все сущности и связи подписаны, а диаграмма охватывает весь объем данных, необходимых для хранения.
-
Соединяйте фигуры
Нажмите на любую фигуру и потяните линию из появившихся точек (кругов), чтобы соединить ее с другой фигурой и показать связь между сущностями. Следите за тем, чтобы не было избыточных сущностей или связей. Если вы ищете неисправности в базе данных, обращайте внимание на разрывы в связях, а также на отсутствующие сущности или атрибуты.
-
Поделитесь своей ER-диаграммой
Поскольку ER-диаграммы наглядны и стандартизированы, они служат отличным инструментом для совместной работы, который команды могут просматривать и улучшать вместе. Вы легко можете поделиться своей диаграммой по электронной почте, через Slack или с помощью ссылки. Нажмите «Поделиться» в правом верхнем углу экрана — появится всплывающее окно. Выберите удобный способ отправки диаграммы и настройте соответствующий уровень прав доступа.