awesome-everything EN
↑ Обратно к восхождению

Очереди, потоки, события

Change data capture: тест с выбором ответа

Суть Тест с выбором на синтез по всему юниту CDC — риск replication slot, удержание WAL, стратегия snapshot, захват delete, семантика доставки и порядок.
Высота — путь к senior
НольJuniorMiddleSenior
Ты на senior-высоте — в орбите
◷ 12 min

Шесть вопросов поперёк всего юнита. Каждый отражает решение, которое ты принимаешь, эксплуатируя CDC в production — не определение для заучивания, а сбой, который надо разобрать прежде, чем он тебя разбудит.

Цель

Убедись, что связываешь механизм slot, удержание WAL, стратегию snapshot, захват delete и семантику доставки — тот синтез, к которому вёл урок.

Викторина

Воркер Kafka Connect коннектора Debezium ловит OOM и лежит шесть часов на нагруженной OLTP-машине. Какой главный риск для исходного Postgres и почему?

Викторина

Твой CDC-коннектор выглядит полностью здоровым — потребляет, lag около нуля — но WAL на primary продолжает расти и диск заполняется. Самая вероятная причина?

Викторина

Нужно забутстрапить CDC на многотерабайтной таблице MySQL под постоянными записями, и нельзя замораживать записи на часы. Какая стратегия snapshot подходит и в чём компромисс?

Викторина

Событие DELETE из Postgres приходит с before-образом, содержащим только primary key, а downstream нужна полная строка до удаления. Что происходит и какова цена фикса?

Викторина

Команда говорит: «Debezium 2.x даёт exactly-once, так что consumer может пропустить дедуп». Где ломается это рассуждение?

Викторина

Consumer джойнит изменения из таблицы orders и таблицы payments и предполагает, что видит их в порядке коммитов. Почему при Debezium-to-Kafka это предположение небезопасно?

Итог

Сквозная линия юнита — одна цепочка следствий: безусловное обещание slot по WAL делает CDC возобновляемым и оно же переполняет диск, когда consumer застрял или долгая транзакция заморозила restart_lsn; бутстрап — это snapshot-then-stream, где incremental snapshot меняет простоту на старт без lock; захват полных delete стоит объёма WAL через REPLICA IDENTITY FULL; а поскольку resume — at-least-once с порядком только по ключу, consumers должны быть идемпотентными и не предполагать глобальный порядок коммитов.

Продолжить восхождение ↑Change data capture: тест на воспроизведение
хоткеи развернуть
поиск
K
пред. пьеса
k
след. пьеса
j
тиры
t
это меню
?
sources2
expand
  1. 01
  2. 02

Trademarks belong to their respective owners. Editorial reference only.