CDC 4

CDC 심화

학습 목표Debezium 커넥터 토폴로지(Connect worker·slot·topic·SMT)를 설명할 수 있다.Schema registry와 스키마 진화(backward/forward compatibility)를 설계할 수 있다.ordering·exactly-once 보장 범위와 한계를 DB·sink 관점에서 구분할 수 있다.DLQ·재처리·slot lag 복구 런북을 작성할 수 있다.snapshot·incremental 전환·DDL 장애를 운영할 수 있다.문제 상황ALTER TABLE products ADD COLUMN — Debezium Avro deserialize 실패 · consumer 전부 stopconnector 재시작 — offset earliest 실수 — 과거 6개월 replay · ..

CDC와 이벤트

학습 목표Dual write가 DB COMMIT과 메시지 publish 불일치를 만드는 이유를 설명할 수 있다.Transactional outbox로 로컬 TX 안에 비즈니스 row·이벤트 row를 함께 COMMIT하는 이유를 설명할 수 있다.CDC가 WAL/binlog logical 스트림에서 row change를 캡처함을 설명할 수 있다.Debezium connector·envelope·slot 개념을 개요 수준에서 설명할 수 있다.At-least-once 전달에서 순서·중복·멱등 처리를 설계할 수 있다.문제 상황INSERT orders COMMIT 후 Kafka publish timeout — DB 있음 · 재고 미반영publish 성공 → DB ROLLBACK — 유령 이벤트캐시 DEL 앱 코드 ..

이벤트 스트리밍과 CDC

학습 목표이벤트 스트리밍 로그(Kafka)의 partition·offset·consumer group을 설명할 수 있다.Transactional outbox로 DB commit과 이벤트 publish 원자성을 확보할 수 있다.CDC(Change Data Capture) 가 WAL/binlog에서 변경을 읽어 다운스트림에 전파함을 설명할 수 있다.Eventual consistency의 지연·멱등·순서를 SLO와 함께 설계할 수 있다.문제 상황주문 저장 성공 후 Kafka publish 타임아웃 — DB에는 있는데 재고는 미반영반대로 publish 성공 후 DB rollback — 유령 이벤트만 흐름캐시 invalidation을 앱 코드에만 의존 — 배포 누락 시 영구 stale검색 인덱스(Elasticse..

Kafka 기초

학습 목표topic·partition·offset으로 Kafka 로그 모델을 설명할 수 있다.partition key와 ordering 범위를 설계할 수 있다.consumer group으로 병렬 소비·lag를 이해할 수 있다.retention·replay로 backfill·재처리 경로를 설계할 수 있다.앞 편 ingest 레이어에서 Kafka가 어떤 역할인지 연결할 수 있다.문제 상황앱이 DB에 직접 INSERT — 피크에 WAL·lock 포화, 분석 쿼리와 경합RabbitMQ로 이벤트 보냈는데 한 consumer만 — 처리량 천장, 메시지 유실 걱정“Kafka 썼다” — topic 하나에 파티션 1개, consumer 10개인데 9개 idleorder_id 순서가 중요한데 전역 순서를 기대 — part..

Data & AI 2026.07.05