当前位置:问答库>论文摘要

题目:分布式流式处理系统的状态迁移研究与实现

关键词:数据流,流式处理,负载均衡,数据分配,数据迁移

  摘要


在分布式流式处理系统中,由于数据源产生数据的随机性以及数据流的波动性,数据处理的任务量通常难以预测,容易产生数据倾斜,最终导致计算节点之间的负载不均衡,降低流数据处理系统的性能。传统的负载均衡方法,比如算子分配、算子迁移和负载脱落等技术已经得到了很好的研究。这些方法在一定的应用场景下可以获取不错的效果,但是,算子分配通常研究静态情况下算子的分配技术,难以适应系统负载变化,算子迁移技术的代价比较高,调整期间算子不能进行数据处理,易造成较大的输出延迟,而负载脱落技术通常伴随着数据丢弃,难以被大多数应用所接受。这些技术的缺点导致其没有在流式处理系统中被广泛应用。

基于传统流式处理系统及其负载均衡方法的研究,本文提出一种通过状态数据迁移实现系统负载均衡的方案,该方案分为三个部分:首先,改变传统的流式处理框架,设计一种基于分块数据(Section)的处理方式,使之满足数据迁移的基本条件;其次,提出一种粗细粒度不同的三级负载均衡算法,通过迁移不同量的状态数据,平衡各个计算单元的输入流和利用率,充分挖掘系统的计算能力;最后,设计一种完整可靠的在线数据迁移协议,在较少干扰系统运行的情况下,动态迁移各计算单元的状态数据,并保证迁移前后数据的一致性。

本文在开源的、已在实际生产中使用的流式处理系统Jstorm之上实现了本文设计的方案。最后设计了三类实验对系统进行分析评估:Section设计可行性实验,验证了在不同资源配置、不同作业类型下,本文Section设计对系统性能无大的影响,证明了其可用性;迁移协议功能验证试验,验证了数据迁移协议的有效性;负载均衡策略实验,验证了动态负载平衡算法的有效性。本文设计的优化方案可以提高流处理系统对数据流和外部负载变化的动态适应能力,提高系统集群的资源使用率,对多种数据处理系统的优化问题均有一定参考价值。