MySQL Binary Log 기반의 CDC는 왜 효과적일까 :: 잡다한 프로그래밍
반응형

로그 기반 CDC vs 배치 처리 — 데이터 변경 감지 방식의 본질적 차이

대표적인 접근은 배치(Polling)로그 기반 CDC(Change Data Capture) 두 가지다.
이번 글에서는 두 방식의 구조, 장단점, 그리고 실무적 선택 기준을 살펴보자

 

 

배치 기반의 CDC

- 폴링 처리로 5분마다 데이터 조회 = 실시간에 적합하지 않음

로그기반의 CDC

- 모든 트랜잭션을 로깅 하기 때문에 바로바로 이벤트를 받고 처리할 수 있음

 

 

지연시간과 CPU 부하의 상관관계로그기반의 CDC

폴링 = 짧은 주기를 가지면 지연시간이 줄어들지만 CPU 사용량이 늘어난다.

반대로 CPU 사용량이 줄어들면 실시간성이 떨어진다.

로그기반 CDC

변경된 로그를 자동으로 받아, 이벤트 처럼 처리할 수 있고

변경이 없으면 CPU 사용이 거의 없기 때문에 지연시간도 낮고 DB영향이 최소화된다.

 

삭제처리에 유용함

배치처리 CDC의 경우 로우가 삭제되는경우 레코드가 삭제 > 5분뒤 배치처리에서 조회해도 데이터가 삭제되어 조회가 불가능

 

로그기반 DELETE 트랜잭션도 로깅되기 때문에 처리가능

반응형

+ Recent posts