Выбор ответа Senior CDC и инкрементальная загрузка обновлено

Начальный снимок и поток изменений

Вопрос

Почему при запуске CDC важно, чтобы начальный снимок и последующий поток изменений были согласованы по позиции журнала?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Иначе изменения во время снимка потеряются или применятся дважды не в том порядке. Снимок отражает состояние на определённый момент, а поток должен начаться ровно с этой позиции журнала.

Варианты ответа

  1. Иначе Kafka не примет события: брокер проверяет непрерывность LSN в каждом топике
  2. Иначе слот репликации не создастся, потому что снимок держит блокировку на таблицах
  3. Согласованность не важна: события CDC идемпотентны, и повтор старых ничего не испортит
  4. Иначе изменения во время снимка потеряются или применятся дважды не в том порядкеправильный ответ

Разбор

Снимок отражает состояние на определённый момент, а поток должен начаться ровно с этой позиции журнала. Debezium делает это, создавая слот и снимок согласованно. Если поток начать позже, изменения между ними потеряются; если раньше, применение старых изменений поверх более свежего снимка испортит данные без учёта позиций. Kafka и слот к этому отношения не имеют. Идемпотентность сама по себе не исправляет порядок.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.