窗口运算符可以用于flink批处理模式吗



我有一个包含窗口运算符的程序。它在流媒体模式下工作得很好。然而,当我切换到批处理模式时,不会发出窗口。我的问题是:

  1. 是因为水印在批处理模式下没有高级吗
  2. 如何在批处理模式下使用窗口运算符

我假设您使用的是DataStream或Table API(而不是传统的DataSet API(的批处理执行模式。

在批处理模式下,水印是不必要的,但您确实需要使用一个处理有界输入的源,以便Flink意识到它已经完全处理了所有输入。例如,如果您使用的是KafkaSource,则必须使用setBounded(),或者如果您使用FileSource,则不应使用monitorContinuously()

最新更新