JDBC Sink Connector의 메시지 배치(Batch) 처리 이해
252
작성한 질문수 67
안녕하세요 강사님
kafka에서 JDBC SInk Connector의 Consumer가 Offset 450개로 가져가는 순간 commit 이 되어서 __consumer_offsets가 update되는것이 아니라
executeBatch()가 까지 다 성공해야 commit이 날라가서 __consumer_offsets가 update되는 구조인가요?
답변 1
0
안녕하십니까, 요즘 몸이 좀 안 좋아서 답변이 늦었습니다.
질문을 정확히 이해한 것인지는 모르겠지만,
jdbc sink connector가 __consumer_offset에 write를 하는 시점은 Consumer가 Kafka Message를 가져오는 시점이 아니라 Sink connector가 target db에 성공적으로 DML을 수행한 뒤에 write됩니다.
감사합니다.
0
아이고 다시 하루 빨리 건강해지시길 바라겠습니다.

그러면 JDBC Sink Connector 의 Consumer는 기존의 Kafka Consumer랑 다르다고 생각하면 되나요? 기존의 kafka consumer는 poll 하고 commit하는 방식이었던걸로 기억해서요
1
기억이 가물하긴 한데, 예전에 테스트 한 경험으로는 target db에 제대로 작업이 안되었으면 commit을 안한것 같습니다. 아마 connector 단에서 db 작업까지 감안한 뒤에 commit 하도록 되어 있는것 같습니다..
근데, 저도 시간이 나면 다시 테스트를 한번 해봐야 할 것 같습니다. 시간 나면 다시 테스트 해보고 확실하게 말씀드리겠습니다.
0
다음 사람들을 위해 보충 설명 남깁니다.
선생님께서 말씀하신대로, Sink connector가 target db에 성공적으로 DML 수행한 뒤 commit되고 syn-ack를 주고 받으면 __consumer_offset을 write하게 됩니다.
기존의 kafka consumer는 poll 하고 최종적으로 트랜잭션을 타고 DB에 commit하는 방식이 맞으며, 이를 JDBC Sink Connector가 수행합니다.
해당 프로세스는 카프카 core편에서 자세하게 알아볼 수 있습니다~!
계속 csv파일을 폴더로 인식하는 중입니다.
0
69
2
cdc failover
0
70
2
avro plugin에 안보이는거 같아요
0
70
2
zookeeper가 실행이 안되요
0
79
3
Debezium CDC Source Connector 이벤트 메시지
0
87
2
재 질문! 다른 connector가 동일 토픽 사용
0
68
2
메시지 발행이 안 됩니다.
0
78
2
디비지움 오프셋 리셋
0
96
2
mysql_jdbc_oc_sink_customers_02.json 에서 오류납니다.
0
72
3
io.debezium.connector.mysql.MySqlConnector 질문
0
68
2
Debezium 이벤트 메시지 발행 시 성공여부
0
82
2
connect 구동 오류
0
99
3
CDC Connect 통시에서의 암호화 관련 하여 문의 드립니다.
0
122
2
GCSSinkconnector
0
66
1
debezium source connector에서 `poll.interval.ms` 파라미터
0
145
2
자문자답: JDBC Sink Connector가 PostgreSQL의 Schema를 바라보지 않습니다.
0
214
1
table.name.format에 관하여..
0
197
2
binlog와 offset 관련 추가 질문드립니다
0
152
1
Debezium cdc source for MSSQL-Server [등록오류]
0
193
2
http http://localhost:8083/connector-plugins 시 플러그인이 보이지 않습니다.
0
192
2
안녕하세요 sink connector 생성 config 관련 질문입니다.
0
165
2
수강환경 VirtualBox -> Docker
0
231
2
일반적인 예시들이 궁금해서 질문 남깁니다.
1
148
2
debezium connector schema 찾지 못하는 오류
0
436
2





