Apache Kafka Stream / KSQL如何处理乱序/延迟消息?

时间:2018-03-09 06:07:55

标签: apache-kafka apache-kafka-streams ksql

据我所知,kafka流通过保留窗口处理延迟消息以容忍延迟,例如

TimeWindows.of(TimeUnit.MINUTES.toMillis(2))
                   .until(TimeUnit.DAYS.toMillis(1) /* keep for one day */)
  1. 但我找不到KSQL中的相关部分,还不支持?
  2. 我可以通过kafka流进行准确统计,给出最大容忍延迟(因为我不确定)?就像Apache Flink sideOutputLateData专门处理迟到的消息一样。

1 个答案:

答案 0 :(得分:2)

KSQL使用Kafka Streams,因此目前窗口的保留策略为1天。目前,您无法在语法中对其进行配置,但可以将其添加到窗口语法中。我建议您在KSQL存储库(https://github.com/confluentinc/ksql)中添加一个功能请求(GitHub问题)。