inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

Kafka Sink Connect 사용

delete 명령은 토픽에

221

lulala

작성한 질문수 31

0

delete명령같은것은 반영을 못하나요?

데이터가 토픽저장되어 쌓이는것을 실습해봤습니다.

source 데이터를 delete를 하면 어떻게 되는지 해봤는데 토픽에 값이 전달이 안되더군요(데이터 저장이 아니니까 당연한건가..)

카프카를 사용해서 taget데이터를 삭제하는 방법이 따로있는것인가요?

spring-cloud architecture JPA spring-boot msa Kafka

답변 1

1

Dowon Lee

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

기본적으로 Kafka는 메시지를 추가하는 역할로 사용하시는게 맞습니다. Event Soucring과 CQRS와 같은 데이터 동기화 패턴에서는 rollback 처리를 구현하기 위해 Kafka를 사용하여, 추가 뿐만 아니라, 삭제나 변경이력과 같은 모든 사항을 기록하는 용도로써 Kafka를 사용할 수 있습니다.

Source의 데이터를 변경하는 작업에 대해서는 Topic에 전달되도록 Connector를 구성하지 않았기 때문에, 반영이 되지 않았습니다. 수정 작업을 위해서는 mode를 timestamp로 설정해서 사용해서 구성하셔야 합니다. (아래 Source Connector 참조)

{
"name" : "my-source-connect-2",
"config" : {
"connector.class" : "io.confluent.connect.jdbc.JdbcSourceConnector",
"connection.url":"jdbc:mysql://localhost:3306/mydb",
"connection.user":"root",
"connection.password":"test1357",
"mode": "timestamp+incrementing",
"timestamp.column.name" : "modified_at",
"incremental.column.name" : "id",
"validate.non.null": false,
"table.whitelist":"users",
"topic.prefix" : "my_topic_2_",
"tasks.max" : "1"
}
}

또한, Kafka Conenct를 통해 Target 데이터를 삭제하기 위해서는 delete.enabled=true 옵션을 추가하신 다음 기본키를 바탕으로 삭제하실 수 있다고 공식 문서에 나와 있기는 하지만, Kafka Connect에서 DB를 제어하는 것 보다는 Topic에서 해당 메시지를 삭제하는 것이 좋을 것 같습니다.

감사합니다. 

kafka 업데이트 강의 듣고 시포요

0

114

2

강의 교안

0

105

2

마이크로서비스간 통신 시, 인증 처리

0

116

2

api gateway 에서 인증 처리

0

76

1

섹션 19 질문드립니다

0

85

2

강의 자료 업데이트

0

105

2

부하분산 강의 섹션

0

66

1

강의자료는 어디에서?

0

98

2

강의 자료는 어디서 다운 받을 수 있나요?

0

131

2

전체 사용자 조회시 오류

0

65

1

혹시 pk 외 별도의 id 를 부여한 이유가 있을까요 ??

0

120

2

학습 방향

0

105

2

카프카 커넥터 사용 목적 문의

0

92

2

kafka 강의

0

118

2

서비스 디스커버리 종류

0

90

2

강의 자료에 대해서 궁금해요

0

126

2

GlobalFilter, LoggingFilter가 동작하지 않습니다.

0

96

2

Kafka Source Connect 버전 에러

0

95

2

소스커넥터는 사용안한 거 맞죠?

0

85

2

강의자료 업데이트 문의

0

99

2

강의에서 BCryptPasswordEncoder 에 역할(5-2)

0

64

1

강의 업데이트 계획이 궁금합니다.

0

121

2

MSA 애플리케이션에 Spring Web과 Spring Data JPA를 사용하는 것이 바람직한지 궁금합니다. (MSA 설계와 관련된 질문입니다)

0

168

2

어떤 것이 업데이트 된 건가요?

0

169

2