인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

techsupport2님의 프로필 이미지
techsupport2

작성한 질문수

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

oracle source connector 관련 문의

해결된 질문

작성

·

333

·

수정됨

0

안녕하세요 강사님

cdc 관련 적용을 하다가 질문이 있어서 글을 남기게 되었습니다.

 

오라클 source connector를 생성하려고 하는데요.

아래와 같은 설정을 하였는데 DB 전체 스키마에 대해서 스냅샷을 진행하여 시간이 너무 오래 걸리는데요. 혹시 제가 빠뜨린 설정이 있을까요?

오라클의 경우는

전체 스키마는 5개정도이지만 실제 사용하고자 하는 스키마는 2개에 포함된 테이블 몇 개 정도입니다.

{

"name": "v2_ora_source_connector_20230516_01",

"config" : {

"connector.class" : "io.debezium.connector.oracle.OracleConnector",

"db_type":"oracle",

"tasks.max" : "1",

"database.server.name" : "v2_source_connector_20230516_01",

"database.user" : "TEST11",

"database.password" : "TEST11",

"database.url": "jdbc:oracle:thin:@10.74.XXX.XXXX:1521:XXXXX",

"database.dbname" : "SIDV_V2_20230516_01",

"database.out.server.name":"v2_ora_source_out_20230516_01",

"schema.history.internal.kafka.bootstrap.servers" : "10.74.XXX.XXX:9092",

"schema.history.internal.kafka.topic": "ora_source_history_20230516_01",

"schema.include.list": "TEST11 , TEST22",

"include.schema.changes": "true",

"database.connection.adapter": "logminer",

"topic.prefix": "V2_ORA_SOURCE",

"table.include.list":"TEST11.GD_CDC_WORK_REQ_MGMT , TEST11.VD_CDC_VEND , TEST22.AM_CDC_ORDER , TEST22.AM_CDC_CLAIM , TEST22.AM_CDC_COUNSEL" ,

"include.schema.changes": "true",

"auto.evolve": "true",

"time.precision.mode": "connect",

"key.converter": "io.confluent.connect.avro.AvroConverter",

"value.converter": "io.confluent.connect.avro.AvroConverter",

"key.converter.schema.registry.url": "http://localhost:8081",

"value.converter.schema.registry.url": "http://localhost:8081",

"snapshot.mode" : "initial",

"tombstones.on.delete": "true",

"transforms": "rename_topic",

"transforms.rename_topic.type" : "org.apache.kafka.connect.transforms.RegexRouter",

"transforms.rename_topic.regex" : "V2_ORA_SOURCE(.*)",

"transforms.rename_topic.replacement" : "v2_source_$1",

"transforms": "unwrap",

"transforms.unwrap.type": "io.debezium.transforms.ExtractNewRecordState",

"transforms.unwrap.drop.tombstones": "false"

}

}

 

 

답변 1

0

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

안녕하십니까,

오라클 연동은 안해봐서 정확힌 모르겠지만,

전체 연동하려는 테이블은 5개인데, DB내의 모든 테이블들을 다 스냅샷을 시도해서 오래 걸리는 건가요?

음.. 문서대로라면 snapshot_mode가 initial이면 5개 테이블만 스냅샷을 시도해야 되는데, 그게 안되나 보군요.

꼭 초기 스냅샷을 실시간으로 생성해야 하는 상황이 아니라면 5개 테이블에 대해서 export dump를 받은 뒤에 target db로 migration 한 뒤에 snapshot_mode를 schema_only로 설정한 뒤 connector를 기동해 보시면 어떨까 싶습니다.

감사합니다.

techsupport2님의 프로필 이미지
techsupport2
질문자

해당 문제는 debezium connector 라이브러리 버전 문제 였습니다.2.1 --> 1.9 수정 시 정상적으로 동작하였습니다.

techsupport2님의 프로필 이미지
techsupport2

작성한 질문수

질문하기