论文部分内容阅读
近年以来,大数据处理一直是计算机界研究的热点,特别是云计算、物联网和社交网络等新兴服务的出现,使得各类型的数据呈现爆炸式增长。由于海量数据具有数据量巨大、数据结构复杂等特点,因此从海量数据中挖掘有效信息的技术难度越来越大,特别是从海量数据中进行相似性连接查询就愈发困难。所谓相似性连接查询,指的是从一个或者两个数据集(或者数据源)中查找出所有相似的对象对。该技术被广泛应用于相似图像检索、相似网页检测、文本挖掘和社区信息聚类等领域。在目前关于相似性连接查询的研究中,主要集中使用一台计算机处理存储在数据库中的数据,但面对TB甚至PB级别的海量数据,会出现存储容量、内存空间不足和CPU运算瓶颈等问题。
为了解决这些问题Google率先提出了MapReduce的编程模型,该模型通过集合大量廉价商用机器的存储和运算能力,使得该运算模型能够处理海量数据的运算。本文在深入研究MapReduce的工作原理后,提出了一种基于MapReduce的相似性连接查询算法。本文研究的数据对象是被广泛应用于图像信息存储的高维直方图数据,并利用推土距离(Earth Movers Distance,EMD)作为相似性度量的方法。推土距离具有良好的抗噪性,对概率分布间的微小偏移不敏感等优良特点,同时由于该度量方法具有三次方的复杂度,应用该方法会降低算法的时间效率。为解决该问题,本文提出的算法设计了三个MapReduce的运算阶段,并引用向量投影的方法来降低高维数据的维度,进而计算推土距离的下界,同时利用霍夫变换技术,对经过投影的数据构建霍夫空间,从而达到数据修剪的目的。本文还对该算法进行多维投影向量的扩展,使得运算的效率得到进一步提高。
本文最后通过一系列的实验来验证本文提出的基于MapReduce的相似性连接查询算法的正确性、高效性以及可靠性。同时通过对比本文提出的算法与目前研究相同课题的最新算法的实验结果显示,本算法具有更好的表现。