인프런 커뮤니티 질문&답변

이무님의 프로필 이미지
이무

작성한 질문수

카프카 완벽 가이드 - 커넥트(Connect) 편

Debezium Source와 JDBC Sink Connector를 이용하여 스키마 레지스트리의 스키마 호환성 실습 - 02

스키마 호환성 질문있습니다.

작성

·

153

0

안녕하세요,

 

스키마 레지스트리의 compatibility가 BACKWARD로 설정되어 있는 상태에서 nullable int 타입 컬럼을 source 쪽에서 추가하셨는데,

BACKWARD 호환성의 경우는 읽기 쪽부터 변경스키마를 반영해야 하는 것이 아닌가요?

nullable이므로 default가 있는 컬럼의 추가라서 BACKWARD를 만족한다는게 왜 소스쪽에서 추가한 내용 바탕으로 설명이 되는 것인지 이해가 되지 않습니다.

 

답변 1

0

권 철민님의 프로필 이미지
권 철민
지식공유자

안녕하십니까,

RDB to RDB CDC Replication 시스템에서 스키마의 변경은 대부분 소스 쪽에서 수행합니다. 그러니까 Source와 Sink가 주-종 및 단방향의 관계성을 가지고 있습니다. 때문에 소스 DB 테이블의 변경이 Sink DB 테이블의 변경으로 자동 반영 될 수 있도록 운영되고 있습니다.

하지만 일반적인 CDC Replication과 달리 오픈 소스 분산 DB기반의 데이터 연동은 양방향 연동을 염두에 두고 스키마 호환성등이 발전해 왔기에 CDC Replication과 Schema Registry를 결합할 경우 일반적인 CDC Replication에서 기대되는 스키마 반영이 되지 않을 수 있습니다.

강의 실습에서는 이를 설명하기 위해서 일반적인 CDC Replication 환경에서 Schema Registry가 Backward로 설정되었을 때 소스 테이블의 변경이 어떻게 적용이 되는지를 보여드리기 위해서 구성되어 있습니다.

이런 맥락을 가지고 좀 더 강의를 들어 보시면 어떨까 싶습니다. 원하시는 답변이 아니면 다시 글 부탁드립니다.

 

감사합니다.

이무님의 프로필 이미지
이무

작성한 질문수

질문하기