ПаттернОбновлено 05.08.202611 мин

Active-active база данных

Active-active база данных: условия применения, поток записи и чтения, отказоустойчивость и цена усложнения архитектуры.

Active-active база данных

Active-active база данных: условия применения, поток записи и чтения, отказоустойчивость и цена усложнения архитектуры.

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

Место в архитектуре данных

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

Как проверять на практике

Нарисуйте владельца истины, направление репликации, гарантии доставки и поведение при недоступности. Для каждой копии данных должна быть процедура пересоздания.

  1. Опишите операции. Что записывается, читается и изменяется в одной транзакции.
  2. Оцените данные. Объём, рост, кардинальность, перекос ключей и сроки хранения.
  3. Зафиксируйте гарантии. Согласованность, RPO, RTO, допустимый lag и поведение при отказе.
  4. Соберите воспроизводимый тест. Версия СУБД, конфигурация, SQL, планы и метрики до изменения.
  5. Подготовьте эксплуатацию. Мониторинг, бэкапы, обновления, права, runbook и ответственные.

Практический пример

Паттерн «Active-active база данных» моделируют на одном бизнес-процессе, включая повторную доставку, недоступность компонента и восстановление после частичного сбоя.

Что измерять

СлойПроверкаКрасный флаг
Запросыp50, p95, p99, планы, rows examined и buffer hitsрешение принято по средней задержке
Записьthroughput, locks, WAL, compaction и write amplificationнагрузка тестируется одним клиентом
Надёжностьrestore, failover, lag, RPO и RTOреплика считается резервной копией
Продуктend-to-end latency, lag, доля повторов, потери, стоимость инфраструктуры и время восстановленияучтена инфраструктура, но не сопровождение

Ограничения и типичные ошибки

Паттерн не отменяет компромиссы согласованности. Дополнительная система оправдана только измеримым выигрышем и ясной операционной моделью.

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

Чек‑лист готовности

  • определён источник истины
  • схема поддерживает бизнес-инварианты
  • есть репрезентативный нагрузочный тест
  • проверены restore и failover
  • права приложения минимальны
  • известны стоимость владения и условия пересмотра решения
Оценки читателей

Отзывы и практический опыт

Пока нет опубликованных отзывов. Можно первым рассказать, насколько материал помог в проекте.