当前位置: 首页 > 知识库问答 >
问题:

KStream-KStream联接与KStream-KTable联接性能的比较

常雅达
2023-03-14
5 kafka brokers
Kafka Topics - 15 partitions and 3 replication factor. 

我正在使KStream-KStream连接,其中创建2个内部主题。而KStream-KTable join将创建1个内部主题+1个表。

就性能和其他因素而言,哪个更好?

共有1个答案

胡鸿羲
2023-03-14

选择不是性能问题,而是语义问题:联接结果应该是什么?这两个连接确实计算出完全不同的结果,所以您应该选择满足应用程序需要的语义。

CP文档和AK Wiki中记录了不同的语义:

  • https://docs.confluent.io/current/streams/developer-guide.html#加入
  • https://cwiki.apache.org/confluence/display/kafka/kafka+streams+join+semantics
 类似资料:
  • 我目前正在尝试使用KStream到KTable的连接来执行Kafka主题的充实。对于我的概念证明,我目前有一个Kafka流,其中有大约600,000条记录,它们都有相同的键,还有一个KTable,它是从一个主题创建的,其中KTable主题中的键与创建KStream的主题中的600,000条记录中的键匹配。 当我使用左联接(通过下面的代码)时,所有记录在ValueJoiner上都返回NULL。 下面

  • 我需要帮助理解在Kafka2.2中使用max.task.idle.ms时的Kafka流行为。 我有一个KStream-KTable联接,其中KStream已被重新键入: 所有主题都有10个分区,为了测试,我将max.task.idle.ms设置为2分钟。myTimeExtractor只有在消息被标记为“快照”时才更新消息的事件时间:stream1中的每个快照消息都将其事件时间设置为某个常数T,st

  • 我试图根据Kafka的文档实现这个连接。 我不知道为什么这个连接不起作用。。。 首先我通过了所有的值。 如果未加入序列化选项,我将收到此运行时异常: 线程“StreamAPP-stream-event-b3dc5fff-abee-4fa0-92f9-e1690f8fd152-StreamThread-1”组织中出现异常。阿帕奇。Kafka。溪流。错误。StreamsException:ClassC

  • 我已经创建了要将它们连接在一起的kstream。两个流的输出如下所示: 流1: 流2: 我想创建这两个Stream的连接流(内连接),所以我创建了以下KStream: 在这个KStream中,我只使用了一个连接,我正在更改输出消息的格式,仅此而已。 通过一个例子,我将解释我想做什么: 在窗口内发布以下消息: 流1 流2 加入流 出版的是什么 我想出版什么 总之,我只想在窗口中发布最新消息,而不是所

  • 我试图用GlobalKTable连接KStream,连接不完全在键上。 我想通过empIdOverLoginUserId的值通过employeesDetails的键将empIdOverLoginUserId与employeesDetails连接

  • 我有一个Kafka Streams应用程序,其中我将读取“topic1”的KStream与读取“topic2”的GlobalKTable连接起来,然后再与读取“topic3”的GlobalKTable连接起来。 当我尝试同时推送消息到所有3个主题时,我会得到以下异常- org.apache.kafka.streams.errors.invalidStateStoreException 如果我在这些