我的设备数据是这样的, 设备id id(设备的唯一标识), 时间戳 time,要处理的指标 value,
在eventTime语义下watermark 生成方式为new Watermark(Math.max(time, currentMaxTimestamp) - maxOutofOrderness),
我需要对设备数据 做 keyby(id) 分组后再计算,但总有几个设备数据迟到,导致这几个设备数据就一直计算不到,请问有什么解决办法吗? *来自志愿者整理的flink邮件归档
keyby 之后是做窗口聚合吗?如果是的话,SQL API 有一个配置项 table.exec.emit.late-fire.enabled
和 table.exec.emit.late-fire.delay 可以处理迟到数据。当这个功能 enabled 之后,若 delay = 0
则每来一条迟到数据就会输出一次修正的结果,若 delay > 0 则是窗口结束后每隔 delay 的时间输出一次。能接受的迟到的时长和 state
ttl 是一样的。详细说明见 WindowEmitStrategy 这个类。 *来自志愿者整理的FLINK邮件归档
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。