Что такое CDC
Отслеживание изменений в базе данных
CDC (Change Data Capture) — Захват изменений данных
CDC — паттерн отслеживания и захвата изменений в базе данных для репликации в другие системы в реальном времени.
Методы реализации CDC
| Метод | Описание | Плюсы/Минусы | |-------|----------|--------------| | Log-based | Чтение WAL/binlog | Низкая нагрузка, надёжно | | Trigger-based | Триггеры БД | Гибко, нагружает БД | | Timestamp | По полю updated_at | Просто, пропускает удаления | | Query-based | Периодический опрос | Просто, высокая задержка |
Популярные инструменты
- Debezium — open-source, Kafka Connect
- AWS DMS — управляемый сервис AWS
- Striim — enterprise решение
- Airbyte — ETL с поддержкой CDC
Применение CDC
- Синхронизация микросервисов
- Репликация в Data Warehouse
- Кэш инвалидация
- Event Sourcing
- Аудит изменений
Пример архитектуры
PostgreSQL → Debezium → Kafka → Consumers