论文部分内容阅读
图处理系统作为一种大数据分析工具被用到很多领域中,在图规模不断增大的背景下,对处理系统的扩展能力与并行性提出越来越高的要求,一方面要采取分布式架构实现横向扩展,另一方面还要优化外存储器访问进行纵向扩展,无论是二选其一,又或者兼而有之,均将面临图分区的问题。而最优图的划分计算复杂度很高,所以主流系统往往只是随机划分图数据,从而造成图处理过程中负载动态变化,很难平衡,显著降低网络和磁盘等资源的利用率,拖累了图处理的速度。 在图处理系统中,点状态的更新需要经消息传播,而这些消息则面临着高效传播的问题,如何存储数据使系统能快速寻址影响着系统的性能,与传统的图数据的存储不同,本项研究提出对图数据的存储方式进行优化的方法,使用一致性哈希算法对图数据进行分区和存储,这种图数据的存储方式能解决以下两个方面的问题:第一个问题是快速的寻址,本系统使用红黑树达到快速寻址的目的,寻址时通常仅仅只需要进行少数几次的查找,从而在图处理的每轮迭代中,大量的消息能够高效传播。第二点,动态分区扩展,不同于以往的分布式图处理系统,本系统可以在图处理的过程中动态的扩展分区,由于图处理中每轮迭代的速度由最慢的分区所决定,通过使负载重的分区的再次分区,使其分裂成两个分区,本文也通过定量的控制,使这两个分区实现了对负载的近似均分,这样可以消除热点,加速图处理。本项研究基于上述方法设计和实现了基于外存模式的分布式图处理系统Ecgraph,Ecgraph使用了动态访存优化的策略,根据负载调整图的分区存储,平衡IO,从而提高图处理的性能。 实验中使用不同的算法和包括合成的及真实的各类数据集对 Ecgraph访存优化效果进行了测试,验证了基于一致性哈希访存优化方法的有效性。测试结果表明,随着处理过程推进,经过几轮访存优化之后,一轮迭代时间相对于初始的随机划分的时间减少30%~50%。同时,还跟同为分布式外存模式图处理系统Chaos作了对比,实验证明,在同等条件下,Ecgraph比 Chaos有较好的性能优势,特别是对于偏斜的图,Ecgraph比Chaos执行时间减少了40%~61%。并且,本系统通过实验证明了在集群达到一定规模时,通信的开销不会再有很大变化,从而说明了系统具有很好的横向扩展的能力。