flinkSql 时间窗口到达前 输出结果

3 篇文章 0 订阅
2 篇文章 0 订阅

flinkSql的时间窗口,可以将一段时间内的数据进行聚合计算. 但是有时, 我们希望可以在时间窗口截止前, 就可以看到结果. 一种方案是: 使用嵌套的时间窗口, 另一种方案是, 在代码进行配置.
我们这里说下如何在代码里进行配置

比如, 时间窗口为 12小时-12小时 (24小时为一个窗口), 但是希望每5分钟就需要输出一次结果.

  配置如下:
        Configuration conf = new Configuration();
        conf.setString( "table.exec.emit.early-fire.enabled","true");
        conf.setString( "table.exec.emit.early-fire.delay",1000*60*5 + " ms"); 
        TableEnvironment.getConfig().getConfiguration().addAll(conf)

如上的配置, 就可以在每5分钟输出一次结果了.

如果不管本次最新结果是否较上次发生变化都下发,则可设置【table.exec.emit.unchanged.enabled = true】

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值