1

我编写了一个 Flink 程序,它从一个简单的 kafka 流计算每个键控窗口的事件数。我工作得很好,快速而准确。当源停止时,我想0在每个窗口上都有计算结果,但没有发送结果。该功能只是不执行。我认为这是因为 Flink 的惰性操作行为。

有什么推荐吗?

4

1 回答 1

1

我遇到了同样的情况。用另一个进程填充数据库中的漏洞是一种解决方案。

但是,我发现将您的主流与自定义定期源结合起来更容易,该源会发出假人,其唯一作用是触发窗口创建。这样做时,您必须确保在计算中忽略假人。

以下是编写定期源代码的方法(但是您可能不需要 RichParallelSourceFunction,SourceFunction 就足够了)

于 2018-12-01T11:45:20.220 回答