gpt4 book ai didi

apache-kafka - Kafka Streams 可以配置为等待 KTable 加载吗?

转载 作者:行者123 更新时间:2023-12-03 18:31:39 25 4
gpt4 key购买 nike

我正在使用物化 KTable 与我的 KStream 进行左连接(而流是左侧)。

但是,它似乎立即处理,无需等待当前版本的 KTable 加载..

我在 KTable 的源主题中有很多值,当我启动应用程序时,很多连接都失败了(好吧,不是真的,因为它是左连接)。

我可以让它延迟启动以便等待初始主题加载吗?

最佳答案

处理在 Kafka Streams 中是时间同步的。因此,表输入主题和流输入主题是根据记录时间戳顺序处理的。这在语义上是合理的,因为在流表连接中,您不想将流记录与旧版本或新版本的 KTable 连接起来。 ,但使用基于流记录时间戳的正确版本。
如果您的数据没有正确的时间戳,您可以尝试为 via builder.table(..., Consumed.with(...)) 指定自定义时间戳提取器。返回确保正确行为的时间戳(即,可能小于第一个流记录的时间戳?)

  • https://docs.confluent.io/current/streams/developer-guide/config-streams.html#streams-developer-guide-timestamp-extractor

  • 请注意,正确的时间戳同步需要 Kafka Streams 2.1。旧版本仅以尽力而为的方式同步时间,可能无法提供您想要的行为。有关更多详细信息,请参阅 KIP-353。
  • https://cwiki.apache.org/confluence/display/KAFKA/KIP-353%3A+Improve+Kafka+Streams+Timestamp+Synchronization

  • Kafka 3.0 附带更多时间戳同步改进: https://cwiki.apache.org/confluence/display/KAFKA/KIP-695%3A+Further+Improve+Kafka+Streams+Timestamp+Synchronization

    关于apache-kafka - Kafka Streams 可以配置为等待 KTable 加载吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56556270/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com