강의

멘토링

로드맵

Inflearn brand logo image

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

일단해님의 프로필 이미지
일단해

작성한 질문수

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

kafkacat을 이용하여 개별 Source Connector의 offset을 리셋하기

디비지움 오프셋 리셋

작성

·

28

0

1-1. 디비지움도 오프셋 리셋이 가능한가요?

그렇게 된다면

만약 mysql 로그 경로에 로그들이 예전과 같지 않은데 가능한가요?

1-2. 혹시 디비지움으로 mysql의 빈로그의 특정 지점부터 읽어들이게 할 수도 있나요?

 

답변 2

1

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

안녕하십니까,

  1. offset reset이 connector가 읽어 들인 binlog를 아예 처음부터 다시 읽어 들이는 것을 의미하시는 건지요? 만약 그렇다면 기존 connector를 삭제하시고, connector의 이름을 새롭게 부여해서 다시 만드시면 됩니다. 예를 들어 "name":

    mysql_cdc_oc_source 이라면 "name":

    mysql_cdc_oc_source_new로 기존에 없던 이름으로 다시 만들어 주십시요. 이게 잘 안되면 __connect_offsets 토픽을 삭제하시면 됩니다.

로그 경로들이 예전과 같지 않다는 의미가 뭔지요? 중요한 건 테이블의 현재 데이터로 initial load를 한 뒤에 binlog는 모두다 순차적으로 보관이 되어있는 상태가 되어야 합니다.

  1. 음, kafkacat으로 debezium source connect를 위해서 offset을 수정해 보지는 않았지만, 안될 이유는 없어 보입니다. 다만 __connect_offsets에 connect명, 서버명:binlog 파일명, position 값 형태로 기록이 되니 이걸 잘 수정하면 될 것도 같습니다(다만 제가 해보진 않았습니다 ^^;;)

감사합니다.

일단해님의 프로필 이미지
일단해
질문자

답변 감사합니다.

답변을 보다 보니 또 새로운 질문이 생겨서 다시 문의 드립니다.

  1. debezium connector를 새로 만들어서 빈로그를 처음부터 다시 읽어 진행한다고 하면

토픽을 같은거를 써도 되나요?
예를 들어 a connector 만들면서 a topic 진행했는데

a connector new 로 만들면서 기존에 있던 a topic에 넣어 라고 해도 에러가 안 나는지 궁금합니다. (이렇게 하는 이유는 굳이 jdbc connector를 새로 만들고 싶지 않아서 입니다)

 

  1. 실습에서는 kcat 활용해서 오프셋을 0 으로만 지정했던 거 같은데 옵션을 주면 binlog position 으로도 진행이 가능한가요?

 

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

아, 이게 질문이 또 있는지 깜빡했습니다. 올려주신 신규 질문에 답변 드렸습니다.

0

안녕하세요, 인프런 AI 인턴입니다. 일단해님.

디비지움(Debezium) 커넥터는 Kafka Connect의 기능 중 하나로, Change Data Capture(CDC)를 통해 데이터베이스의 변경 사항을 Kafka로 스트리밍합니다. 이를 위해, Kafka offsets를 사용하여 소비자가 어딘가에서 읽기를 중단하고 다시 시작할 수 있는 기능을 제공하고 있습니다.

1-1. 디비지움의 오프셋 리셋 가능 여부:
디비지움은 Kafka의 오프셋을 사용하여 데이터를 읽고, 오프셋을 리셋할 수 있는 기능이 제한적으로 가능하지만 몇 가지 주의할 점이 있습니다. 특히, MySQL 등 데이터 소스의 binlog(바이너리 로그) 파일이 이전과 달라진 경우, 기록된 오프셋에 접근이 어려울 수 있습니다. 이 경우, 특정 오프셋으로 복구하려면 위험 요소가 있어서 상세한 조정과 전문적인 지식이 필요할 수 있습니다.

1-2. 디비지움으로 MySQL 특정 지점부터 읽기:
디비지움은 특정 지점(binlog 파일 및 위치)부터 읽기를 시작하도록 설정할 수 있습니다. 이를 위해서는 offset 설정 값을 직접 조정해야 합니다. 하지만, 상세한 설정 및 조정은 MySQL의 현재 상태와 binlog 파일의 접근 가능성에 따라 복잡할 수 있습니다. 이를 위해 충분한 주의와 사전 검토가 필요합니다.

관련 기존 답변 URL:
- “binlog와 offset 관련 추가 질문드립니다”: 이 답변에서 binlog 파일의 관리와 관련한 사항을 논의하고 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

일단해님의 프로필 이미지
일단해

작성한 질문수

질문하기