> For the complete documentation index, see [llms.txt](https://kaze.gitbook.io/qa-theory/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kaze.gitbook.io/qa-theory/bazy-dannykh/preimushestva-i-nedostatki-osobennosti-relyacionnykh-i-nerelyacionnykh-baz-dannykh.md).

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

### 1️⃣ **Реляционные базы данных (SQL)**

**Примеры:** PostgreSQL, MySQL, Oracle, MS SQL Server

**Особенности:**

* Данные хранятся в **таблицах**, строки = записи, столбцы = поля.
* Строгая **схема** (schema) — все записи должны соответствовать структуре таблицы.
* Поддерживаются **связи между таблицами** (foreign keys).
* Язык запросов — SQL.

**Преимущества:**

* ACID-транзакции → гарантии целостности данных.
* Хорошо для структурированных данных и сложных запросов.
* Поддержка JOIN, агрегатных функций, индексов.
* Стандартизированное управление данными.

**Недостатки:**

* Трудно масштабировать горизонтально (шардинг сложен).
* Сложнее работать с динамической или неструктурированной информацией.
* Изменение схемы может быть ресурсоёмким.

***

### 2️⃣ **Нереляционные базы данных (NoSQL)**

**Примеры:** MongoDB (документы), Redis (ключ-значение), Cassandra (колоночная), Neo4j (графовая)

**Особенности:**

* Гибкая структура: документы, ключ-значение, графы или колонки.
* Нет строгих схем (или минимальные требования).
* Оптимизированы для определённых задач: масштабируемость, быстрый доступ, хранение больших объёмов.

**Преимущества:**

* Легко масштабировать горизонтально.
* Гибкость для изменения структуры данных.
* Высокая скорость работы с большими объёмами.
* Подходит для Big Data, аналитики, кэширования, IoT.

**Недостатки:**

* Меньше гарантий целостности (ACID не всегда соблюдается, используют BASE).
* Ограниченные возможности сложных запросов и JOIN.
* Разные движки используют разные API → сложнее интегрировать.

***

#### 3️⃣ Краткая таблица сравнения

| Характеристика   | Реляционные (SQL)      | Нереляционные (NoSQL)                    |
| ---------------- | ---------------------- | ---------------------------------------- |
| Структура данных | Таблицы, строгая схема | Документы, ключ-значение, графы, колонки |
| Гибкость схемы   | Низкая                 | Высокая                                  |
| Масштабируемость | Горизонтальная сложна  | Горизонтальная легко                     |
| Транзакции       | ACID                   | Часто BASE                               |
| Запросы          | Сложные, JOIN          | Ограниченные, специфичные                |
| Примеры          | PostgreSQL, MySQL      | MongoDB, Redis, Neo4j                    |
