计算机工程与科学 ›› 2023, Vol. 45 ›› Issue (02): 237-245.
吕鹤轩1,2,3,黄山1,2,3,艾力卡木·再比布拉1,2,3,吴思衡1,2,3,段晓东1,2,3
Lv He-xuan1,2,3,HUANG Shan1,2,3,Alkam·Zabibul1,2,3,WU Si-heng1,2,3,DUAN Xiao-dong1,2,3
摘要: 衡量大数据的数据挖掘性能有2个最重要的任务指标:一是实时性,二是准确性。流数据从数据产生到消息队列再通过数据源流入Flink进行计算,这个过程中因为网络传输速度不同,不同节点的计算性能不同等原因,流数据进入计算框架的先后顺序和数据产生的事件时间顺序会有局部乱序的现象。面对窗口作业的传统水位线机制在不确定乱序程度的流数据情况下无法同时兼顾作业结果的实时性和准确性。针对这个问题,建立了流数据微簇模型。通过局部乱序度算法,根据流数据微簇的流数据事件时间局部乱序程度计算出可以代表当前时刻流数据的乱序度。设计了水位线动态调整策略,使水位线根据流数据的乱序程度动态调整大小。最后,在Apache Flink框架中对基于事件时间窗口的水位线动态调整策略进行了实现。实验结果表明,弹性或不确定乱序流数据条件下,基于事件时间窗口的水位线动态调整策略可以有效地同时兼顾窗口作业的准确性和实时性。