CDC는 변경 데이터 캡처(Change Data Capture)의 약자로서 다른 소프트웨어가 이러한 변경 사항에 응답 할 수 있도록 데이터의 변경 사항을 모니터링하고 캡처하는 시스템의 오래된 용어이다. 

데이터웨어 하우스에는 CDC 지원 기능이 내장되어 있다. 업스트림 OLTP 데이터베이스에서 데이터가 변경되면 데이터웨어 하우스를 최신으로 유지해야 한다.




대표적으로 Debezium(발음은 디비지움이라 함, https://debezium.io/docs/contribute/)이 요즘 뜨고 있는데.. 기본적으로 다양한 데이터베이스 시스템 모니터링을 지원 하는 현대적이고 분산 된 오픈 소스 변경 데이터 캡처 플랫폼이다.



(https://vladmihalcea.com/a-beginners-guide-to-cdc-change-data-capture/ 참고)




 


<참조 링크 모음>

https://en.wikipedia.org/wiki/Change_data_capture


https://vladmihalcea.com/a-beginners-guide-to-cdc-change-data-capture/



https://medium.com/blablacar-tech/streaming-data-out-of-the-monolith-building-a-highly-reliable-cdc-stack-d71599131acb


https://developers.redhat.com/videos/youtube/QYbXDp4Vu-8/


https://www.youtube.com/watch?v=IOZ2Um6e430&feature=youtu.be


https://techmagie.wordpress.com/2018/04/01/accelerating-data-loading-into-data-lake-using-cdc/



https://www.ridicorp.com/blog/2017/10/30/binlog-collector/



https://www.confluent.io/blog/no-more-silos-how-to-integrate-your-databases-with-apache-kafka-and-cdc


https://www.linkedin.com/pulse/change-data-capture-postgresql-via-debezium-part-1-paolo-scarpino/


https://www.slideshare.net/ceposta/the-hardest-part-of-microservices-your-data



https://wecode.wepay.com/posts/streaming-databases-in-realtime-with-mysql-debezium-kafka


https://debezium.io/blog/2018/12/05/automating-cache-invalidation-with-change-data-capture/


https://www.confluent.io/kafka-summit-sf18/change-data-streaming-patterns-for-microservices-with-debezium


https://engineering.linkedin.com/data-replication/open-sourcing-databus-linkedins-low-latency-change-data-capture-system




<고민꺼리>


CDC를 실제로 구현하기 위한 작업이 만만치 않은 것 같다.


GTID, bin 포맷, 운영이슈(MHA 등), 아키텍처





Posted by 김용환 '김용환'