是否可以清除数据流中的当前水印?
不允许延迟的一个月水印输入示例:
[
{ timestamp: '10/2018' },
{ timestamp: '11/2018' },
{ timestamp: '11/2018', clearState: true },
{ timestamp: '9/2018' }
]
正常情况下,“9/2018”的纪录会因为太晚而被抛出。当 clearState
看到消息了吗?
是否可以清除数据流中的当前水印?
不允许延迟的一个月水印输入示例:
[
{ timestamp: '10/2018' },
{ timestamp: '11/2018' },
{ timestamp: '11/2018', clearState: true },
{ timestamp: '9/2018' }
]
正常情况下,“9/2018”的纪录会因为太晚而被抛出。当 clearState
看到消息了吗?
1条答案
按热度按时间pxyaymoc1#
水印是不应该倒退的——它不确定会发生什么,实际上这是一个坏主意。但是,有各种方法可以容纳最新的数据。
如果您使用的是windowapi,flink将在窗口的允许延迟过期后清除任何窗口状态。如果你想要更多的控制,可以考虑使用
ProcessFunction
,这将允许/要求您显式管理状态(和计时器)。