大家好, 我现在的场景需求是,窗口size是1个小时,每分钟触发统计一次结果。比如现在是10点钟,则统计9点到10点的结果。 下一分钟则在10:01分时触发统计9:01到10:01的结果。
如果用Sliding window, 比如.timeWindow(Time.hours(1L), Time.minutes(1)), 则会输出60/1=60个结果集,这不是我想要的结果,我只想要当前时间往前一个小时的结果。
除了在window function api做逻辑过虑外,还有什么方法可以实现这种场景?
滚动窗口的话不适合,它每次是输出整点的,比如从9点到10点,然后就跳到10点到11点,也不符合我的业务要求。*来自志愿者整理的flink邮件归档
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
这种情况一般是kafka的某个分区,不存在数据,导致总体的watermark不前进。遇到这种情况一般是需要手动设置idle source[1]。但是社区的watemark push down存在一些问题[2],已经在修复了。
[1] https://ci.apache.org/projects/flink/flink-docs-master/dev/table/config.html#table-exec-source-idle-timeout [2] https://issues.apache.org/jira/browse/FLINK-20947?page=com.atlassian.jira.plugin.system.issuetabpanels%3Aall-tabpanel*来自志愿者整理的flink邮件归档