
Способы организации CDC в PostgreSQL и почему Debezium из коробки может не решить всех проблем
Что делать, если необходимо решить задачу захвата изменений? Какое из решений взять, чтобы потом не пришлось кардинально все менять?
На примере PostgresSQL покажу некоторые из существующих вариантов организации CDC, которые так или иначе могут быть использованы. Далее подробнее остановлюсь на решении с использованием Debezium и рассмотрю его не со стороны «happy path», а с точки зрения «что делать, когда что-то идет не так». Рассмотрим такие нюансы работы Debezium, как опасности при запуске ручных снапшотов, работа с шардами и другие кейсы.
Цель доклада — разобрать возникающие проблемы на «проблема -> причина -> решение». Если эта информация станет для вас в некотором роде FAQ, то цель будет достигнута :)
Целевая аудитория: разработчики, архитекторы, дата-инженеры.