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

Статью подготовили специалисты образовательного сервиса Zaochnik.

Инфологическая модель «сущность-связь»: базовые понятия и логика построения

Содержание:

Инфологическая модель «сущность-связь»

Прежде чем данные попадут в базу, их нужно осмыслить так, как это делает человек, — привычными словами и понятиями. Именно для этого и служит инфологическое моделирование: оно даёт самые естественные для нас способы представлять и собирать сведения, которые лягут в основу будущей базы данных. Такая модель строится с опорой на естественный язык. Правда, применить его напрямую нельзя: тексты сложны для машинной обработки, а сам язык слишком неоднозначен. Поэтому инфологическую модель выражают через три опорных элемента — сущности, связи между ними и атрибуты (свойства).

Сущность: тип и экземпляр

Начнём с центрального понятия, вокруг которого строится вся модель.

Определение 1

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

Диапазон здесь очень широк. Сущностью может стать что угодно: изобретение, гроза, женитьба, цвет, вкус, авиарейс, самолёт, место, человек и так далее. Важно лишь то, что об этом объекте мы собираемся что-то запоминать.

При работе с сущностями различают два уровня — тип и экземпляр.

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

Экземпляр сущности — это конкретная вещь внутри такого набора.

Разберём на примере. ГОРОД — это тип сущности, а вот Кишинёв и Одесса — уже его экземпляры. Иначе говоря, тип описывает целую категорию, а экземпляр указывает на одного конкретного её представителя.

Атрибут: характеристики сущности

Одного лишь названия сущности мало — о ней нужно что-то знать. За это отвечают атрибуты.

Определение 2

Атрибут — это поименованная характеристика (свойство) сущности.

По сути, атрибут — любая деталь, которая помогает выразить состояние сущности, её числовую характеристику, отнести её к какому-то классу, идентифицировать или уточнить. Именно через атрибуты мы определяем, какую информацию собираемся собирать об объекте. Так, для сущности СОБАКА подойдут атрибуты ПОРОДА, ЦВЕТ, ВОЗРАСТ, КЛИЧКА и другие.

Есть тонкость: имя атрибута должно быть уникальным в пределах одного типа сущности. А вот у разных типов сущностей атрибуты вполне могут называться одинаково. Например, атрибут ЦВЕТ уместен сразу для многих сущностей — ДЫМ, АВТОМОБИЛЬ, СОБАКА и так далее.

Экземпляр атрибута и тип атрибута

Различие между типом и экземпляром работает и для атрибутов. У атрибута ПОРОДА как у типа есть множество значений, то есть экземпляров: Овчарка, Колли, Дог, Пекинес и прочие. Но каждый отдельный экземпляр сущности несёт лишь одно значение такого атрибута — у конкретной собаки порода только одна.

Атрибут или сущность?

Резкой границы между атрибутами и типами сущностей на самом деле нет. Атрибут остаётся атрибутом лишь постольку, поскольку привязан к определённому типу сущности. В другом контексте тот же самый атрибут вполне может выступить самостоятельной сущностью. Всё зависит от того, под каким углом мы смотрим на предметную область.

Ключ: минимальный идентификатор

Чтобы отличать один экземпляр сущности от другого, нужен надёжный опознавательный признак. Эту роль играет ключ.

Определение 3

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

Ключевое слово здесь — «минимальный». Оно означает, что из набора нельзя выбросить ни одного атрибута без потери его опознавательной силы. Как только мы убираем любой атрибут, по оставшимся идентифицировать сущность уже не получится. Именно эта «неделимость» и отличает ключ от простого набора свойств.

Связь: как сущности соединяются

Отдельные, ничем не соединённые данные образовали бы слишком примитивную базу. Ценность появляется тогда, когда сущности связаны между собой.

Связь ассоциирует между собой две или более сущности.

Любопытно, что чёткой границы между связями и типами сущностей тоже не существует. Один и тот же факт можно совершенно правомерно трактовать и как связь, и как сущность — всё решает постановка вопроса.

Возьмём брак. На запрос «с кем вступил в брак Дмитрий Хазанов» брак выступает связью — он соединяет двух людей. Но стоит спросить иначе: «сколько браков зарегистрировали в этом ЗАГСе за нынешний год» — и брак превращается в самостоятельную сущность, которую мы считаем и храним.

Именно связи делают базу по-настоящему полезной. Одно из ключевых требований к организации данных — возможность находить одни сущности по значениям других, а без установленных связей это невозможно. На практике базы нередко содержат сотни и даже тысячи сущностей, а число потенциальных связей между ними теоретически переваливает за миллион. Как раз обилие этих связей и определяет сложность инфологических моделей.

Всю модель удобно держать в голове как связку трёх уровней. Сущность — это то, о чём мы храним сведения, причём тип задаёт категорию (ГОРОД), а экземпляр — конкретику (Кишинёв). Атрибуты описывают сущность (ПОРОДА, ЦВЕТ у собаки), и здесь тоже действует пара «тип — экземпляр». Ключ отбирает минимальный набор атрибутов для однозначного опознавания экземпляра. Наконец, связи соединяют сущности и позволяют искать одни объекты через другие. Особенно важно уловить относительность этих ролей: атрибут при смене точки зрения способен стать сущностью, а факт вроде брака — то связью, то сущностью. Именно эта гибкость и делает модель «сущность-связь» столь близкой к тому, как человек воспринимает реальный мир.

Навигация по статьям

Выполненные работы по базам данных

  • Базы данных

    Тема Цифровой атлас мифологических персонажей

    • Вид работы:

      Курсовая работа

    • Выполнена:

      10 июня 2026

    • Стоимость:

      11 300 руб.

    Заказать такую же работу
  • Базы данных

    Проектирование информационной системы Автоматизация деятельности Разработка прототипа информационной системы

    • Вид работы:

      Исправление и доработка готовой работы

    • Выполнена:

      6 июня 2026

    • Стоимость:

      4 300 руб.

    Заказать такую же работу
  • Базы данных

    Программирование и разработка базы данных на примере предметной области Прокат товаров

    • Вид работы:

      Курсовая работа

    • Выполнена:

      21 мая 2026

    • Стоимость:

      8 600 руб.

    Заказать такую же работу
  • Базы данных

    продолжение проектной работы

    • Вид работы:

      Лабораторная работа

    • Выполнена:

      30 марта 2026

    • Стоимость:

      13 700 руб.

    Заказать такую же работу
  • Базы данных

    Проектирование и поставка на сервер базы данных для предметной области Управление продажами канцтоваров

    • Вид работы:

      Курсовая работа

    • Выполнена:

      24 марта 2026

    • Стоимость:

      10 200 руб.

    Заказать такую же работу
  • Базы данных

    Системы обработки больших данных Big Data

    • Вид работы:

      Практическая работа

    • Выполнена:

      2 февраля 2026

    • Стоимость:

      1 300 руб.

    Заказать такую же работу