请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

flink一个数据进行多个统计,如何确保所有程序都执行完

老师,我在做一个实时数据分析系统。一条数据输入到flink后,需要进行多个指标的统计,为了方便不停机扩展,所以每一个统计指标我都写了一个jar程序。现在的实现方式是等待500ms后,将所有程序输出的数据进行整合,但是遇到了一个问题,多个程序处理数据速度不同,总会有一部分处理结果超过500ms的窗口时间,延迟到达。
我想问下有没有其他方式,确保多个程序执行完后,再输出数据进行整合?
谢谢

正在回答 回答被采纳积分+3

2回答

Michael_PK 2018-10-09 23:21:28

延迟到达是很正常的,flink里面有类似多久时间延长的控制的,超过延迟真就丢了

0 回复 有任何疑惑可以回复我~
Michael_PK 2018-10-09 23:20:38

如果是同一份数据源的,建议直接在一个类里面,加载成多个DataSet进行处理,不需要分开多个jar吧

0 回复 有任何疑惑可以回复我~
  • 提问者 6209701 #1
    老师,我使用reduce时候,设置时间窗口500ms(以系统时间为准),超过500ms没有到达窗口内的key,怎么扔掉,而不是后续又再在新的500ms内再处理一次相同的key,只想处理一次,不想因为延迟,处理两次
    回复 有任何疑惑可以回复我~ 2018-10-10 11:27:46
  • Michael_PK 回复 提问者 6209701 #2
    你查下flink里面的水印概念
    回复 有任何疑惑可以回复我~ 2018-10-10 13:24:40
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信