基于Hadoop平台的Apriori算法的并行化研究与实现


时间: 2021-08-01 00:12:34 人气: 35 评论: 0

Hadoop 是由Apache 软件基金会开发的开源的、可以更容易开发和并行处理大规模数据的分布式计算平台,其完全使用Java 开发,可以广泛运行在多种软硬件平台上。Apriori算法,在众多的关联规则算法中是最经典的,此算法运用项集事务数量的逐步增加来发现频繁集,然后以频繁集为基准去发现关联规则。在Apriori算法的研究与实现上,作者以java编程语言实现此算法,同时采用了串行和并行两种方式实现此算法,并以商品购物篮为数据源,旨在优化超市、网店营销策略的同时,比较在不同数据规模区间里,串行实现和并行实现的效率差别,分析之间的优劣性,最后以直观的图标形式呈现出来。

【关键词】Hadoop 关联规则 频繁集 串行 并行

本文通过5个章节的篇幅,详细说明Apriori算法如何串行实现与并行实现,将两者进行时间效率上的比较,最后得出结论。第1章节介绍课题的研究背景和意义,包括简单介绍Apriori算法及其研究现状,对Hadoop进行简单的阐述,介绍课题研究的问题域;第2章节重点详细介绍什么是Apriori算法和Hadoop平台,理清两者的运行机理和理论原理,并说明Apiori算法的串行与并行的区别;第3章节介绍本课题的主要研究内容和方向,论述了Apriori算法的串行实现和并行实现的设计思想,并以代码形式展示部分思路;第4章节介绍对Apriori算法的串行与并行两种模式,进行不同规模数据的处理测试得出的结果加以分析和比较,得出结论;第5章节对全文及本课题进行总结,指出存在不足和改进想法。


    目   录

前   言 4

1研究背景与意义 6

1.1 Apriori算法 6

1.1.1 关联规则算法——Apriori算法概述 6

1.1.2 Apriori算法的研究现状 6

1.1.3 研究Apriori算法的意义 7

1.2 分布式系统——Hadoop简介 7

1.2.1什么是Hadoop 7

1.2.2 Hadoop的优点 7

1.2.3 hadoop大数据处理的意义 8

1.3 问题域的选择 8

2理论与技术详述 10

2.1 Apriori算法 10

2.1.1 频繁项集挖掘 10

2.1.2 Apriori算法的基本思想 10

2.2 Hadoop平台 12

2.2.1 什么是Hadoop 12

2.3 串行与并行 15

2.3.1 什么是串行 15

2.3.2 什么是并行 15

2.3.3 并行程序设计的方式分类 15

2.3.4 针对串行和并行的分析预测 15

3算法实现过程 16

3.1 串行算法实现 16

3.1.1 串行化算法基本设计思路 16

3.1.2 串行化算法设计 16

3.2 并行算法实现 21

3.2.1 并行化算法基本设计思路 21

3.2.2 并行化算法设计 21

3.2.3 并行化算法的实现过程 24

3.3 并行算法的实现——子集生成的优化 29

3.3.1 并行化优化算法基本设计思路 29

3.3.2 并行化优化算法的设计 30

4算法运行实现与分析 32

4.1问题域的说明 32

4.2 实验开发环境 32

4.3 串行化运行及分析 32

4.4 并行化运行及分析 33

4.5 比较分析 36

4.6 分析结论 37

5总结与体会 40

5.1总结 40

5.2体会 40

6致  谢 42

参考文献 43


评论
188083800