论文部分内容阅读
目前,随着“互联网+”时代的到来,各行各业都将传统行业和互联网进行整合,来达到产业的升级换代,由此必然会产生海量的互联网数据。XML可以在不同平台间进行数据的表示、存储和交换,因此XML数据在互联网数据中占据了绝大多数。面对如此浩瀚的XML数据海洋,如何从中提取出有价值的信息,数据挖掘技术显示出了强大的生命力。通过数据挖掘,可以从海量的、非结构化的、静态的XML数据集合中,提取出隐含在其中的、未知的、有用的知识和信息,这对于科学研究与商业决策等领域具有指导性的重大意义。大数据带来了大机遇,但同时也对快速、高效、低成本的挖掘数据提出了挑战。云计算技术的泛起为解决大数据的这一挑战带来了新的机会,其通过分布式结构将存储和运算任务平衡的分配给集群中的节点,从而实现了对超大数据集的存储和运算,使数据挖掘变得更加简捷、高效、易于实现。在众多的云平台中,Hadoop以其成熟、开源、高效等特点在数据领域得到了普遍的应用。结合Hadoop与数据挖掘的优势,本文进行了以下三个方面的研究工作:首先,针对Hadoop在处理海量小型XML数据时出现的内存占用率高、存储性能差以及难以对XML这种结构的数据进行分析处理的问题,本文对XML数据进行解析、合并及编码等预处理,使其转变为适合于Hadoop处理的文本数据。其次,随着数据规模的急剧增大,将导致数据的扫描和计算所耗费的时间越来越长,致使Apriori算法已经无法满足于大型数据关联规则挖掘的要求。对此,本文对Apriori算法进行了分析与改进,提出了一种Apriori的改进型算法——-XApriori算法,通过对CD并行化策略的改进来对XApriori算法进行并行化处理并且将其与Hadoop平台相结合来进行关联规则的挖掘。最后,本文设计并且实现了一个以Hadoop为云计算平台的海量小型XML数据分布式挖掘系统——DXMS系统,对其各个小功能模块进行了阐述。该系统主要是由XML数据预处理模块和中间数据分布式挖掘模块组成,XML数据预处理模块采用生产者-消费模式,多线程,多级缓存等技术来提高系统对XML数据的预处理能力。中间数据分布式挖掘模块通过Hadoop架构与XApriori并行化算法相结合来提高系统对中间数据的挖掘能力。在充分利用网络资源的情况下,XML数据预处理模块和中间数据分布式挖掘模块可以并发运行,从而使DXMS系统的效率得到了提高。最后通过实验验证了DXMS系统的性能,证实了本文提出的方法的有效性,解决了当前在Hadoop平台下挖掘海量小型XML数据时的问题。