论文部分内容阅读
在数据挖掘领域,聚类分析是一个重要且备受关注的研究方法,其中包含的基于密度的聚类算法由于可以有效的排除噪声数据,发现任意形状的簇而被广泛的研究。当今处于信息时代,从网络中可以获取各种各样的数据,从而导致存储在数据库中的数据量急剧增加,若再想从这些海量数据中获得有价值的信息和知识是非常困难的,这促使人们对大规模数据进行并行化研究。作为分布式计算、网格计算和并行计算的发展,云计算成为了当前研究的热点。Hadoop平台是云计算的开源实现,主要是针对海量数据的并行研究,运行在由廉价的计算机构成的集群上,有效的节约计算成本,提高数据处理能力。本文主要研究如何在异构Hadoop平台上实现海量数据的聚类问题。首先针对异构Hadoop环境下仍采用均等的数据分配方法将严重降低MapReduce的性能,提出了比例数据分配策略。主要思想是通过计算异构集群中各节点的计算比率,将已经分割好的数据块重新进行组合,形成数个按比例划分的数据块,每个节点根据自身性能来选择所分配和存储的数据块,从而使异构Hadoop集群中各节点处理数据的时间大致相同,降低节点之间数据的移动量。其次考虑到MapReduce默认的数据划分方法将割断数据本来之间的联系,提出了有交叉区域的数据划分方法。然后结合异构Hadoop平台,利用MapReduce化的编程思想,实现DBSCAN算法的并行化。最后,在搭建的异构Hadoop平台上分别对比例数据分配算法和DBSCAN算法的并行化进行测试。实验表明提出的比例数据方法可有效的提高MapReduce的性能,并使数据负载均衡;并行DBSCAN算法可以有效的提高聚类效率,具有很好的扩展性。