开发者社区> 问答> 正文

" 清除DataStream中的Flink水印状态"

"是否可以清除DataStream中的当前水印?

一个月长水印的示例输入,没有允许延迟:

[
{timestamp:'10 / 2018'},
{时间戳:'11 / 2018'},
{timestamp:'11 / 2018',clearState:true},
{timestamp:'9/2018'}
]
通常情况下,'9/2018'记录会因为迟到而被抛弃。有没有办法在看到clearState消息时以编程方式重置水印状态?"

展开
收起
flink小助手 2018-11-28 16:00:07 1646 0
1 条回答
写回答
取消 提交回答
  • flink小助手会定期更新直播回顾等资料和文章干货,还整合了大家在钉群提出的有关flink的问题及回答。

    "水印不应该倒退 - 它未定义会发生什么,而在实践中它是一个坏主意。但是,有各种方法可以容纳后期数据。

    如果您正在使用窗口API,则一旦窗口允许的延迟到期,Flink将清除任何窗口状态。如果您想要比此更多的控制,请考虑使用ProcessFunction,它将允许/要求您明确地管理状态(和计时器)。"

    2019-07-17 23:16:48
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Flink CDC Meetup PPT - 龚中强 立即下载
Flink CDC Meetup PPT - 王赫 立即下载
Flink CDC Meetup PPT - 覃立辉 立即下载