簡體   English   中英

Spring和Kafka:加入3個Kafka主題以生成輸出Kafka流

[英]Spring and Kafka: Join 3 Kafka topics to generate output Kafka streams

我要求加入3個Kafka主題。 前兩個主題A和B將使用內連接添加,因為消息密鑰相同,並生成一個新的Kafka流,POJO與B相同。現在有了這個累積的流,我需要加入另一個主題C,我需要對輸出進行分組基於C中存在的字段

到目前為止,我有以下方法:

KStream - 前兩個主題(A和B)的KStream內連接是否可以不在任何主題上發布此累積輸出,仍然可以在下面使用它

KStream - KStream(以上累積流和主題C)

你能否提出一個更好的方法或任何我可以在java中看到類似實現的例子。

您可以使用兩個連續的連接:

KStream streamAB = streamA.join(streamB, ...);
// either:
KStream streamABC = streamA.selectKey(...) // set to the key as in streamC
                           .join(streamC, ...);
// or:
KStream streamCNew = streamC.selectKey(...); // set to the key as in streamAB
KStream streamABC = streamA.join(streamCnew, ...);
// or:
KStream streamCNew = streamC.selectKey(...); // set to a new join key
KStream streamABC = streamA.selectKey(...) // set to a new join key
                           .join(streamC, ...);

streamABC.selectKey(/* extract grouping field and set as key */).to("outputTopic");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM