Открыть сервис

Реляционная модель данных

Реляционная модель данных — это логическая модель представления данных, основанная на математическом понятии отношения (relation). В рамках этой модели информация организуется в виде совокупности двумерных таблиц (отношений), связанных между собой с помощью общих атрибутов (ключей). Реляционная модель была предложена Эдгаром Ф. Коддом в 1970 году в статье «A Relational Model of Data for Large Shared Data Banks» и стала теоретической основой для большинства современных систем управления базами данных (СУБД), таких как Oracle, MySQL, PostgreSQL, Microsoft SQL Server и других.

Основные понятия реляционной модели

Реляционная модель оперирует строго определёнными терминами, которые отличаются от бытового понимания «таблиц» и «столбцов».

Отношение (Relation)

Отношение — это математическое понятие, которое в реляционной модели отображается в виде таблицы. Отношение имеет имя (например, «Сотрудники») и состоит из заголовка (набора атрибутов) и тела (множества кортежей). Важное свойство отношения — оно не может содержать одинаковых кортежей (строк), так как это нарушает математическое определение множества.

Кортеж (Tuple)

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

Атрибут (Attribute)

Атрибут — это столбец таблицы, который описывает одно свойство сущности (например, «Фамилия», «Дата рождения», «Зарплата»). Каждый атрибут имеет уникальное имя в пределах отношения и определённый домен (множество допустимых значений, например, целые числа или строки).

Домен (Domain)

Домен задаёт тип данных и множество возможных значений для атрибута. Например, атрибут «Возраст» может иметь домен «целые числа от 0 до 150». Домены обеспечивают целостность данных на уровне модели.

Первичный ключ (Primary Key)

Первичный ключ — это атрибут или набор атрибутов, который уникально идентифицирует каждый кортеж в отношении. Например, в таблице «Студенты» первичным ключом может быть «Номер зачётной книжки». Первичный ключ не может содержать NULL-значений (неопределённых данных) и должен быть уникальным для всех строк.

Внешний ключ (Foreign Key)

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

История и развитие

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

Реляционная алгебра

Реляционная алгебра — это теоретический язык запросов к реляционной базе данных, состоящий из набора операций над отношениями. Эти операции позволяют извлекать и комбинировать данные без указания способов их физического хранения. Основные операции реляционной алгебры:

SQL (Structured Query Language) является практической реализацией реляционной алгебры, адаптированной для использования в СУБД.

Нормализация

Нормализация — это процесс преобразования схемы базы данных к виду, минимизирующему избыточность данных и аномалии при вставке, обновлении и удалении. Теория нормализации была разработана Эдгаром Коддом и Рэймондом Бойсом. Выделяют несколько нормальных форм (НФ):

Первая нормальная форма (1НФ)

Отношение находится в 1НФ, если все его атрибуты содержат только атомарные (неделимые) значения, и в таблице нет повторяющихся групп. Например, вместо столбца «Телефоны» с несколькими номерами через запятую создаётся отдельная таблица «Телефоны» с одной строкой на каждый номер.

Вторая нормальная форма (2НФ)

Отношение находится в 2НФ, если оно находится в 1НФ и каждый неключевой атрибут функционально полно зависит от всего первичного ключа (а не от его части). Это актуально для таблиц с составными первичными ключами.

Третья нормальная форма (3НФ)

Отношение находится в 3НФ, если оно находится в 2НФ и ни один неключевой атрибут не зависит транзитивно от первичного ключа (то есть не существует атрибута, который зависит от другого неключевого атрибута).

Нормальная форма Бойса — Кодда (НФБК)

Более строгая версия 3НФ: отношение находится в НФБК, если для каждой нетривиальной функциональной зависимости X → Y (где Y не является подмножеством X) X является потенциальным ключом.

На практике большинство реляционных баз данных нормализуются до 3НФ или НФБК, что обеспечивает баланс между целостностью данных и производительностью.

Ограничения целостности

Реляционная модель поддерживает три основных типа ограничений целостности:

Достоинства и недостатки

Достоинства

Недостатки

Применение

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

Несмотря на появление альтернативных моделей (документные, графовые, ключ-значение), реляционная модель остаётся наиболее распространённой и стандартизированной парадигмой управления данными, особенно в сценариях, где важны транзакционная целостность (ACID) и сложные запросы.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →