Skip to content

Latest commit

 

History

History
13 lines (12 loc) · 1.36 KB

cdc.md

File metadata and controls

13 lines (12 loc) · 1.36 KB

CDC

  • 구현 기법
    • Timestamp on rows: 타임스탬프 칼럼을 두고, 마지막 변경 타임스탬프 값보다 더 최근 타임스탬프를 갖는 레코드를 변경된 것으로 식별
    • Version numbers on rows: 테이블 해당 레코드의 버전 기록 칼럼을 두고, 더 높은 버전을 보유한 레코드를 변경된 것으로 식별
    • Status on rows: 1, 2번 기법 보완 용도로 사용. 데이터 변경 여부를 true/false 값으로 저장하는 칼럼의 상태를 기반으로 변경 여부 판단
    • Time verserion/status on rows: 1, 2, 3번 세가지 특성을 모두 활용
    • Triggers on tables: 트리거를 활용해 변경된 데이터를 배포하는 형태로 구현. 전반적으로 시스템 유지보수성을 저하시키기때문에 주의가 필요
    • Event programming: 데이터 변경 식별 기능을 애플리케이션에서 구현
    • Log scanner on database: 트랜잭션 로그 스캐닝 및 변경 내역 해석을 통해 구현. 데이터베이스와 애플리케이션 영향도가 줄어들고, 데이터베이스 스키마 변경이 불필요한 기법
  • 구현 방식
    • push: 데이터 원천에서 변경을 식별하여 대상 시스템에 변경 데이터를 적재해주는 방식
    • pull: 대상 시스템에서 데이터 원천을 정기적으로 확인하고, 필요시 데이터를 다운로드하는 방식