Что такое денормализация БД
Python
Middle
Без компании
Что такое денормализация БД
Ответы
Денормализация — это намеренное нарушение нормальных форм БД для повышения производительности за счёт избыточности данных. Используется, когда частые JOIN-запросы становятся узким местом.
**Когда применять:**
- Чтение данных происходит чаще, чем запись
- Требуется ускорение сложных запросов
- Нужно упростить схему для аналитики
**Пример:**
Вместо хранения только `user_id` в заказе, дублируем имя пользователя:
```
-- Нормализованная схема
orders (id, user_id, amount)
users (id, name)
-- Денормализованная
orders (id, user_id, user_name, amount)
```
**Плюсы:**
- Уменьшение JOIN-операций
- Ускорение запросов
- Упрощение сложных отчётов
**Минусы:**
- Избыточность данных
- Риск несогласованности
- Усложнение обновлений
Важно применять осознанно, взвешивая trade-off между производительностью и целостностью данных.