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

공부합시다님의 프로필 이미지
공부합시다

작성한 질문수

Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)

Kafka를 활용한 데이터 동기화 테스트 ②

sink로 등록된 topic의 값이 db에 반영되지 않습니다.

작성

·

492

·

수정됨

0

 

sink도 잘 등록되었고, orders topic에 json 값도 잘 전달되지만 전달된 값이 디비에는 반영되지 않아 데이터 삽입이 되지 않습니다. ㅠㅠ

무엇이 문제일까요?

답변 1

0

Dowon Lee님의 프로필 이미지
Dowon Lee
지식공유자

안녕하세요, 이도원입니다.

올려주신 에러로 정확한 원인을 파악하기 어렵지만, 우선 내용을 정리해 보면,

  1. 생성 된 토픽에 대한 테이블이 mydb에 자동으로 생성됨

  2. 토픽(orders)에 메시지가 잘 전달 됨

  3. 토픽에 전달되는 메시지가 테이블에 저장되지 않음

이렇게 3가지 단계로 요약할 수 있을 것 같은데, 우선 1번은 mydb에서 테이블을 삭제한 다음, 자동으로 다시 생성되는지 확인해 보시면 좋을 것 같습니다. 2번은 어디에서 메시지를 전송하는지는 모르겠지만 (예, source conntor) 해당 토픽에 메시지가 잘 되는지 확인해 보기 위해, 기존 토픽을 삭제하고 다시 실행해 보시는게 좋을 것 같습니다. 만약 소스커넥터에 의해 DB에서 가져오는 데이터가 토픽에 저장되는 거라면, 해당 메시지의 스키마하고 기존에 저장되었던 스키마하고 비교해서 같은 형식인지 확인해 보시기 바랍니다. 소스커넥터에 의해서 가져온 스키마(Json 포맷)가 제일 정확할 겁니다. 해당 Json 포맷의 데이터를 직접 토픽에 전송 하였을 때(console producer 등 사용) Sink Connector가 정상적으로 작동중이라면, Sink Connector와 연결된 DB에 데이터가 저장되어야 합니다. 만약 위에 말씀드린 내용외에 추가로 확인해 볼 것은, Kafka Broker하고 Kafka Connectr가 잘 연결된 것인지도 확인해 보시면 좋을 것 같습니다.

감사합니다.

공부합시다님의 프로필 이미지
공부합시다

작성한 질문수

질문하기