NineLabNineLab.ru
КейсыЦены
Контакты
20 декабря 2025Евгений · Технический директор

Репликация vs шарды БД: что выбрать до боли на записи


Ваш стартап взлетел. Но радость сменяется паникой: база данных "задыхается". CPU в полке, запросы висят по 5 секунд. Просто "добавить RAM" уже не помогает. Пришло время выбирать архитектурную пилюлю: Репликация или Шардирование?

Главное. Узкое место в чтении — реплики. В записи или размере диска — шарды. Сначала профиль нагрузки и индексы: шардирование «на вырост» почти всегда дороже, чем слейвы и кеш.

Дилемма архитектора

Выбор стратегии зависит от того, где именно у вас "узкое место": в чтении (Read) или записи (Write).

Сравнение Репликации и Шардирования БД

Рис 1. Слева: Master-Slave Репликация. Справа: Горизонтальное Шардирование.

1. Репликация (Replication): Масштабируем Чтение

Суть: У вас есть один "Босс" (Master), который принимает все изменения, и много "Подчиненных" (Slaves), которые только отдают данные.

  • Когда применять: 80-90% нагрузки — это чтение (Read-heavy). Типично для СМИ, блогов, e-commerce каталогов.
  • Плюсы: Легко настроить (PostgreSQL Streaming Replication, MySQL Binlog). Данные дублируются (бэкап).
  • Минусы: Задержка репликации (Replication Lag). Вы записали данные на Master, но на Slave они появятся через 100мс. Пользователь может не увидеть свой комментарий сразу.

2. Шардирование (Sharding): Масштабируем Запись

Суть: Master не справляется с записью. Мы режем базу на куски. Пользователи A-M едут на Сервер 1, N-Z на Сервер 2.

  • Когда применять: Данных так много, что они не влезают на один диск. Или когда один Master не успевает писать (Write-heavy).
  • Плюсы: Теоретически бесконечное масштабирование.
  • Минусы: Это больно. Вы теряете транзакции ACID между шардами. Вы теряете JOIN (как соединить таблицу с Сервера 1 и Сервера 2?). Бэкапы становятся ночным кошмаром.

Вердикт NineLab

Золотое правило: Откладывайте шардирование до последнего. Это "ядерная кнопка".

Сначала — индексы. Затем — кэширование (Redis). Затем — репликация. И только если у вас трафик уровня Telegram или Uber — шардирование. Не усложняйте архитектуру раньше времени.

Нужен кабинет или обмен с 1С, а не ещё один сервер? NineLab сдаёт личный кабинет B2B от 350 000 ₽ и интеграцию 1С с сайтом от 200 000 ₽ — оценка 1–2 недели. Обзор контура: кабинеты, порталы и интеграции.

Что дальше

Разберём вашу нагрузку и узкие места: high-load под ключ, нагрузочное тестирование или квиз оценки за 2 минуты.

Репликация или шардирование — вопросы

Если узкое место — чтение (каталог, СМИ, витрина) — сначала реплики (master + slaves). Если не влезает запись или диск одного мастера — шарды. RAM «ещё чуть-чуть» не лечит ни то ни другое, когда CPU уже в полке.

Пока 80–90% нагрузки — SELECT, а мастер успевает писать. PostgreSQL streaming или MySQL binlog закрывают чтение. Минус — replication lag: пользователь может не сразу увидеть свою запись на слейве.

Теряете JOIN и транзакции ACID между шардами, бэкапы и миграции усложняются. Резать по ключу стоит, когда данные или запись реально не помещаются на один узел — не «на вырост с первого дня».

Снять профиль: read vs write, медленные запросы, индексы, кеш. Часто хватает реплики и Redis, а не шардов. Шард — следующий шаг после исчерпания чтения со слейвов.

Хотите применить это на практике?

Расскажите про вашу систему — предложим план работ и метрики, которые имеет смысл зафиксировать в SLA/SLO.

Все материалы: High-Load

High-Load24 августа 2026 г.
SLA 99.9% = 8,8 ч простоя: таблица минут и цена для SMB

SLA 99.9% ≈ 8,8 ч простоя в год, 99.99% ≈ 52 мин. Когда «девятки» — переплата без штрафа в договоре. Таблица минут и чеклист для SMB от NineLab.

Читать статью
High-Load17 августа 2026 г.
HighLoad до рекламы: чеклист 3–6 недель (не «сервер мощнее»)

Подготовка к HighLoad до рекламы: цель пика, карта узких мест, правки и стресс-тест. Метод NineLab за 3–6 недель — без «купить сервер мощнее».

Читать статью
High-Load13 августа 2026 г.
ЛК клиента B2B: MVP из 7 экранов, которые реально открывают

Личный кабинет клиента B2B: какие 7 экранов нужны в MVP, что отложить на v2, ориентир сроков и бюджета и чеклист приёмки для дилерского / партнёрского портала.

Читать статью
High-Load12 августа 2026 г.
Как мы сделали поиск организаций для asknayda.ru: лексика, ИИ и пилот

Как устроен поиск компаний в Найде (asknayda.ru): OpenSearch, модель bge-m3, когда включается семантический слой, RRF-гибрид и стадия пилота продукта.

Читать статью