что такое реляционные базы данных

Реляционные базы данных (РБД) — это тип баз данных, которые организуют данные в виде таблиц, каждая из которых состоит из строк и столбцов. В реляционных базах данных информация хранится и обрабатывается на основе математической теории множеств, а именно — на теории отношений. Именно отсюда и происходит термин «реляционная».

Основные концепции реляционных баз данных:

1. Таблицы (Relation)

В реляционной базе данных данные организуются в таблицы (или «отношения»). Каждая таблица состоит из строк и столбцов:

  • Столбцы — это атрибуты, которые описывают свойства объектов (например, имя, дата рождения, адрес).

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

Пример таблицы:

IDИмяВозрастГород
1Иван30Москва
2Анна25Санкт-Петербург
3Сергей40Новосибирск

2. Ключи

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

  • Первичный ключ (Primary Key) — это уникальный идентификатор каждой строки в таблице. Он не может содержать пустых значений (NULL).

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

Пример: в таблице заказов (Orders) может быть внешний ключ, который ссылается на первичный ключ таблицы клиентов (Customers).

Таблица Customers:

IDИмяВозрастГород
1Иван30Москва
2Анна25Санкт-Петербург

Таблица Orders:

IDДатаСуммаID_клиента (внешний ключ)
12025-05-0110001
22025-05-0215002

Здесь внешний ключ в таблице Orders (ID_клиента) ссылается на первичный ключ в таблице Customers (ID).

3. Нормализация данных

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

  • Первая нормальная форма (1NF): Все значения в таблице должны быть атомарными (не делимыми).

  • Вторая нормальная форма (2NF): Таблица должна быть в 1NF, а все атрибуты, не входящие в состав ключа, должны зависеть от всего первичного ключа.

  • Третья нормальная форма (3NF): Таблица должна быть в 2NF, и все атрибуты, не входящие в состав ключа, не должны зависеть друг от друга.

Нормализация позволяет эффективно организовать структуру базы данных и минимизировать избыточность данных.

4. Операции над данными

Реляционные базы данных поддерживают несколько операций, которые позволяют манипулировать данными:

  • SELECT — для выборки данных из таблиц.

  • INSERT — для добавления новых записей.

  • UPDATE — для обновления существующих данных.

  • DELETE — для удаления данных.

Все эти операции описываются с использованием SQL (Structured Query Language) — языка структурированных запросов.

Пример SQL-запроса:

sql
SELECT * FROM Customers WHERE Город = 'Москва';

Этот запрос выберет все записи из таблицы Customers, где в столбце «Город» указана Москва.

5. Связи между таблицами

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

  • Один к одному (1:1): Каждая запись в первой таблице может соответствовать только одной записи во второй таблице, и наоборот.

  • Один ко многим (1:N): Каждая запись в первой таблице может соответствовать многим записям во второй таблице, но каждая запись во второй таблице соответствует только одной записи в первой.

  • Многие ко многим (N:M): Каждая запись в первой таблице может соответствовать многим записям во второй таблице, и наоборот. Для реализации этой связи обычно используется промежуточная таблица.

Пример связи Один ко многим: таблица авторов и таблица книг.

  • В таблице авторов может быть один автор с несколькими книгами, но каждая книга принадлежит только одному автору.

Таблица Authors:

ID_автораИмя
1Толстой
2Чехов

Таблица Books:

ID_книгиНазваниеID_автора (внешний ключ)
1Война и мир1
2Анна Каренина1
3Вишневый сад2

6. Транзакции

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

Каждая транзакция должна удовлетворять четырём основным свойствам, известным как ACID:

  • Atomicity (Атомарность): Все операции транзакции выполняются как единое целое.

  • Consistency (Согласованность): Транзакция переводит базу данных из одного согласованного состояния в другое.

  • Isolation (Изоляция): Результаты транзакции не видны другим транзакциям до её завершения.

  • Durability (Долговечность): После завершения транзакции её изменения сохраняются, даже в случае сбоя системы.

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

Реляционная модель данных была предложена Эдгаром Ф. Коддом в 1970 году, и она основывается на теории множеств. Важнейшими концепциями являются отношения (таблицы), атрибуты (столбцы) и кортежи (строки). Реляционная модель предполагает, что все операции с данными могут быть описаны в терминах математических операций над отношениями.

Преимущества реляционных баз данных:

  • Упорядоченность и структура: Строгая структура таблиц и ключей позволяет легко управлять данными.

  • Гибкость: Реляционные базы данных позволяют эффективно обрабатывать большие объемы данных и выполнять сложные запросы.

  • Целостность данных: Механизмы целостности и транзакций гарантируют правильность и согласованность данных.

  • Масштабируемость: Современные СУБД (системы управления базами данных) могут работать с большими объемами данных, а также поддерживают горизонтальное и вертикальное масштабирование.

Недостатки:

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

  • Сложность запросов: Для сложных аналитических операций может потребоваться создание сложных запросов, что может затруднить работу с большими объемами данных.

Примеры популярных СУБД:

  • MySQL

  • PostgreSQL

  • Oracle Database

  • Microsoft SQL Server

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

Scroll to Top

Карта сайта