数据源停止泵送数据后清除窗口

问题描述 投票:0回答:1

例如,我有一个 flink 窗口应用程序,其数据源是一个发送来自不同公司的员工姓名的 kafka 流。现在,如果一家公司的数据源停止提取数据,我想清除该窗口中存储的所有数据。我怎样才能实现这个目标?

java apache-flink flink-streaming
1个回答
0
投票

您可以实现一个 Flink

WatermarkStrategy
,仅当源空闲“足够长的时间”时才发出水印,然后在该水印触发计时器时清除您的状态。

请注意,“足够长”必须考虑诸如由于上游问题而主题未接收数据等操作问题等问题。因此依赖于此有点危险。

© www.soinside.com 2019 - 2024. All rights reserved.