【发布时间】:2016-06-01 17:42:09
【问题描述】:
简而言之,我想从头开始对 Kafka 中的数据重新运行 Flink 管道。
Flink 0.10.2、Kafka 0.8.2。
我在 Kafka 中有一个保留 2 小时的推文主题,在 Flink 中有一个管道,它以每 10 秒 5 分钟的滑动窗口计数推文。
如果我中断管道并重新运行它,我希望它重新读取较旧的推文,从而发出 5 分钟的推文计数。 相反,它似乎从新到达的推文重新开始,因此需要 5 分钟才能计数“在政权”。
我尝试了auto.offset.reset = smallest/earliest 和更改group.id,但均未成功。我还尝试按照此处所述手动更改 Kafka 中的偏移量:https://metabroadcast.com/blog/resetting-kafka-offsets
然后我假设该问题可能与 Flink 的检查点有关,但我不知道/找不到有关如何重置它的信息。
谁能分享一些工作代码?谢谢,E。
【问题讨论】:
-
我猜你需要使用保存点。这些将在即将发布的 1.0 版本中提供(或者您可能想查看当前的主版本):ci.apache.org/projects/flink/flink-docs-master/apis/streaming/…
-
那会更好,但我也可以从头重新阅读 Kafka 的所有内容并重新计算最后一个窗口。
标签: apache-kafka kafka-consumer-api apache-flink flink-streaming