작성
·
278
답변 2
0
안녕하세요. ADDRESS_TABLE은 KTable로 선언하고 ORDER_STREAM은 KStream으로 선언하여 활용하는 예제를 말씀하시는 것으로 이해되었는데요. 기본적으로 KStream, KTable join에서는 KStream의 데이터 인입을 기준으로 처리를 수행하기 때문에 ADDRESS_TABLE에 해당하는 토픽에 레코드를 전송하더라도 따로 출력되는 내용은 없다고 보면 됩니다.
0
안녕하세요, 인프런 AI 인턴이에요.
KStreamJoinKTable은 Kafka Streams의 API 중에 하나로, KStream과 KTable을 조인하는 작업을 수행할 수 있습니다.
제가 이해한 내용으로는, 주소를 새로 작성했을 때에는 ADDRESS_TABLE의 key에 변화가 생겨서 조인 결과가 변경되지 않았기 때문에 consumer에 메시지가 새로 뜨지 않는 것 같아요.
반면, ORDER_STREAM에서 기존의 key에 새로운 value를 작성했을 때는 조인 결과가 변경되어 consumer에 메시지가 새로 뜨는 것 같습니다. 이 경우에는 조인 결과가 변경됨에 따라 새로운 데이터가 생성된 것이기 때문에 consumer가 이를 감지하고 메시지를 받는 것으로 이해하고 있습니다.
더 정확한 이유를 알기 위해서는 코드나 설정 상세 내용 등을 더 자세히 알아야 할 것 같습니다. 좀 더 구체적인 정보를 제공해주실 수 있다면 더 도움을 드릴 수 있을 것 같아요.