论文部分内容阅读
伴随着信息化时代的到来,各种信息以爆炸式增长,导致图的规模日益增大,传统的图挖掘算法已经不能很好的满足需求。一方面,并行计算可以有效解决这个问题,而包括Hadoop、Hama以及Spark等在内的云计算平台都能较好得支持大数据的并行运算,它们在不少领域都有着广泛的应用。另一方面,对于某种特定的图挖掘算法,在一定的数据规模下,到底哪一个平台更加适合该算法的实现,这是一个非常值得研究的问题。为了解决上述问题,本文分别从云计算平台以及图挖掘算法的并行化两个方面进行研究。对于云计算平台方面,本文主要从它们的系统架构以及相应编程模式的关键技术来进行分析,从原理上研究了MapReduce、BSP、Spark编程框架的底层机制,并以此为基础设计实现并行的图挖掘算法。对于图挖掘算法的并行化方面,本文将图挖掘算法分成三类:图排序算法、图聚类算法、图属性分析算法。首先在研究算法原理的基础上,分别在三个云计算平台上并行实现这些算法,然后搭建实验环境并进行性能测试,通过对比发现基于Spark与Hama实现的程序的运行效率高于基于Hadoop实现的程序的运行效率,同时相对于Hama, Spark表现出更好的可扩展性。根据研究的结果,本文最后实现了一个基于Spark的并行数据分析系统,通过实验证明了此系统效率和性能都超过传统的MapReduce技术的平台。