基于MapReduce并行计算的词频统计的研究.pdf
《基于MapReduce并行计算的词频统计的研究.pdf》由会员分享,可在线阅读,更多相关《基于MapReduce并行计算的词频统计的研究.pdf(21页珍藏版)》请在咨信网上搜索。
1、南 阳 理 工 学 院 本科生毕业设计(论文)学院(系):软件学院 专 业:软件工程 学 生:周 楠 指导教师:陈可 完成日期 2016 年 04 月 南阳理工学院本科生毕业设计(论文)基于MapReduce并行计算的词频统计的研究 Research of the Word Count by Parallel Computing on MapReduce 总 计:毕业设计(论文)15页 表 格:3个 插 图:5幅 基于MapReduce并计算的词频统计的研究南 阳 理 工 学 院 本 科 毕 业 设 计(论文)基于MapReduce并行计算的词频统计的研究 Research of the Wo
2、rd Count by Parallel Computing on MapReduce 学 院(系):软件学院 专 业:软件工程 学 生 姓 名:周 楠 学 号:1415925713 指导教师(职称):陈可 讲师 评 阅 教 师:陈可 完 成 日 期:2016年04月16日 南阳理工学院 Nanyang Institute of Technology 基于MapReduce并计算的词频统计的研究?MapReduce?软件工程 周楠 摘要 我们正处在大数据时代,数据,已经渗透到当今每一个行业和业务职能领域,成为重要的生产因素。人们对于海量数据的挖掘和运用,预示着新一波生产率增长和消费者盈余浪潮的
3、到来大数据时代,数据爆炸式增长,数据量巨大,数据种类繁琐,很难统计,处理和分析,所以数据挖掘显得格外重要,而词频统计正是数据挖掘的一个重要分支。在谷歌,超过一万个不同的项目已经采用MapReduce来实现,包括大规模的算法图形处理、文字处理、数据挖掘、机器学习、统计机器翻译以及众多其他领域。关键词 词频统计;MapReduce;并计算;Hadoop;基于MapReduce并计算的词频统计的研究Research of the Word Count by Parallel Computing on MapReduce Software Engineering Major Zhou Nan Abst
4、ract We are in the era of big data,data,has penetrated into every industry today and the business functional areas,become an important production factor.For huge amounts of data mining and utilization,herald a new wave of productivity growth and the influence of the consumer surplus coming era of bi
5、g data,data explosion,the great amount of data,data types,it is difficult to statistics,processing and analysis,appears especially important,so data mining,and word frequency statistics is an important branch of data mining.In Google,more than ten thousand different projects have been implemented us
6、ing graphs,including large-scale image processing algorithm,word processing,data mining,machine learning and statistical machine translation as well as many other areas.Key Words WordCount;MapReduce;Parallel Computing;基于MapReduce并计算的词频统计的研究目 录 1.绪论 1.1.1.词频统计的意义 1.1.2.MapReduce介绍与应 1.1.2.1.概述 1.1.2.
7、2.分布和可靠性 1.1.2.3.主要功能 1.1.2.4.MapReduce的应 2.1.3 MapReduce与词频统计的关系 3.2.开发平台简介与关键技术 3.2.1.开发平台简介 3.2.1.1.Hadoop 3.2.1.2.Hadoop核架构 4.2.1.3.Hadoop的项 4.2.1.4.Hadoop与MapReduce的区别 4.2.1.5.Linux系列操作系统 5.2.2.关键技术介绍 5.2.2.1.MapReduce技术 5.2.2.2.通过MapReduce实现词频统计的作原理 8.3.词频统计的实现 9.3.1.词频统计的四种实现法 9.3.2.通过MapRedu
8、ce实现词频统计官代码 10.3.3.在集群上运WordCount 12.4 结束语 13.参考献 14.致谢 15.基于MapReduce并计算的词频统计的研究1.绪论 1.1.词频统计的意义 当下我们正处在大数据时代,数据,已经渗透到当今每一个行业和业务职能领域,成为重要的生产因素。人们对于海量数据的挖掘和运用,预示着新一波生产率增长和消费者盈余浪潮的到来。“大数据”在物理学、生物学、环境生态学等领域以及军事、金融、通讯等行业存在已有时日,却因为近年来互联网和信息行业的发展而引起人们关注。现在的社会是一个高速发展的社会,科技发达,信息流通,人们之间的交流越来越密切,生活也越来越方便,大数据
9、就是这个高科技时代的产物。随着云时代的来临,大数据(Big data)也吸引了越来越多的关注。著云台的分析师团队认为,大数据(Big data)通常用来形容一个公司创造的大量非结构化和半结构化数据,这些数据在下载到关系型数据库用于分析时会花费过多时间和金钱。大数据时代,数据爆炸式增长,数据量巨大,数据种类繁琐,很难统计,处理和分析,所以数据挖掘显得格外重要,数据挖掘一般是指从大量的数据中通过算法搜索隐藏于其中信息的过程。数据挖掘通常与计算机科学有关,而词频统计正是数据挖掘的一个分支。比如:使用词频统计统计2015年网络上出现频率最高的词语,从而找出2015年的年度热词,而全球每一年的数据量都极
10、其巨大,而且每年都在爆炸式增长,统计和分析的难度相当大,所以分布式并行计算就显出了无法替代的速度优势。1.2.MapReduce介绍与应用 1.2.1.概述 MapReduce是Google提出的一个软件架构,用于大规模数据集(大于1TB)的并行运算。概念“Map(映射)”和“Reduce(归纳)”,及他们的主要思想,都是从函数式编程语言借来的,还有从矢量编程语言借来的特性。1.2.2.分布和可靠性 MapReduce通过把对数据集的大规模操作分发给网络上的每个节点实现可靠性;每个节点会周期性的把完成的工作和状态的更新报告回来。如果一个节点保持沉默超过一个预设的时间间隔,主节点(类同Googl
11、e档案系统中的主服务器)记录下这个节点状态为死亡,并把分配给这个节点的数据发到别的节点。每个操作使用命名文件的不可分割操作以确保不会发生并行线程间的冲突;当文件被改名的时候,系统可能会把他们复制到任务名以外的另一个名字上去。(避免副作用)。归纳操作工作方式很类似,但是由于归纳操作在并行能力较差,主节点会尽量把归纳操作调度在一个节点上,或者离需要操作的数据尽可能近的节点上了;这个特性可以满足Google的需求,因为他们有足够的带宽,他们的内部网络没有那么多的机器分析、数据需求分析。1.2.3.主要功能 MapReduce提供了以下的主要功能:1)数据划分和计算任务调度:?1基于MapReduce
12、并计算的词频统计的研究系统自动将一个作业(Job)待处理的大数据划分为很多个数据块,每个数据块对应于一个计算任务(Task),并自动 调度计算节点来处理相应的数据块。作业和任务调度功能主要负责分配和调度计算节点(Map节点或Reduce节点),同时负责监控这些节点的执行状态,并 负责Map节点执行的同步控制。2)数据/代码互定位:为了减少数据通信,一个基本原则是本地化数据处理,即一个计算节点尽可能处理其本地磁盘上所分布存储的数据,这实现了代码向 数据的迁移;当无法进行这种本地化数据处理时,再寻找其他可用节点并将数据从网络上传送给该节点(数据向代码迁移),但将尽可能从数据所在的本地机架上寻 找可
13、用节点以减少通信延迟。3)系统优化:为了减少数据通信开销,中间结果数据进入Reduce节点前会进行一定的合并处理;一个Reduce节点所处理的数据可能会来自多个 Map节点,为了避免Reduce计算阶段发生数据相关性,Map节点输出的中间结果需使用一定的策略进行适当的划分处理,保证相关性数据发送到同一个 Reduce节点;此外,系统还进行一些计算性能优化处理,如对最慢的计算任务采用多备份执行、选最快完成者作为结果。4)出错检测和恢复:以低端商用服务器构成的大规模MapReduce计算集群中,节点硬件(主机、磁盘、内存等)出错和软件出错是常态,因此 MapReduce需要能检测并隔离出错节点,并
14、调度分配新的节点接管出错节点的计算任务。同时,系统还将维护数据存储的可靠性,用多备份冗余存储机制提 高数据存储的可靠性,并能及时检测和恢复出错的数据。1.2.4.MapReduce的应用 1.用途 在Google,MapReduce用在非常广泛的应用程序中,包括“分布grep,分布排序,web连接图反转,每台机器的词矢量,web访问日志分析,反向索引构建,文档聚类,机器学习,基于统计的机器翻译.”值得注意的是,MapReduce实现以后,它被用来重新生成Google的整个索引,并取代老的ad hoc程序去更新索引。MapReduce会生成大量的临时文件,为了提高效率,它利用Google文件系统
15、来管理和访问这些文件。在谷歌,超过一万个不同的项目已经采用MapReduce来实现,包括大规模的算法图形处理、文字处理、数据挖掘、机器学习、统计机器翻译以及众多其他领域。2.应用实例(1)MapReduce 编程模型在日志分析方面的应用 日志分析往往是商业智能的基础,而日益增长的日志信息条目使得大规模数据处理平台的出现成为必然。MapReduce 处理数据的有效性为日志分析提供了可靠的后盾。本文将以对访问网页用户的日志进行分析,进而挖掘出用户兴趣点这一完整流程为例,详尽解释 MapReduce 模型的对应实现,涵盖 MapReduce 编程中对于特殊问题的处理技巧,比如机器学习算法、排序算法、
16、索引机制、连接机制等。?2基于MapReduce并计算的词频统计的研究日志分析往往是商业智能的基础,而日益增长的日志信息条目使得大规模数据处理平台的出现成为必然。MapReduce 处理数据的有效性为日志分析提供了可靠的后盾。(2)单一网页信息挖掘 从 URL 得到该网页中有价值的词信息,首先要对 URL 进行重新爬取,以得到其对应的网页内容。从网页中提取关键词,则需要一定的算法支持。在一篇网页中,不同词因为在不同位置或者以不同的格式出现,对应影响程度也不同。比如,在网页的标题或者网页内容每一自然段段首或者段尾的词可能更为重要;在网页中有特定格式,比如加粗或者字体较大或者标记颜色的词可能更为重
17、要。而给定一个词,如何标记其重要性或者对网页的价值?可以将每个词用向量的形式来进行描述,向量中每一维度 d 表示不同的衡量标准,比如 TF(在该网页中出现的次数)、DF(在所有网页中出现的次数)、是否在标题中出现、是否在段首/段尾出现、是否在句首/句尾出现、颜色有无区别其它词、词的词性是名词/动词/形容词/助词,等等。形如 w=(v1,v2,v3,v4,),每个维度 v 对词是网页关键词的决定程度不同,这个影响因子可以通过机器学习算法训练而得。即:由事先指定关键词的网页来进行训练,得到特征权重。得到特征权重后,对于网页中的每个词,可以通过 w=sum(vi*fi)的方式来得到其作为关键词的比例
18、。从网页中选取能代表其内容的几个词,应对所有计算出权重的词按权重从大到小依次排序,选取前几名或者大于某个阈值的词即可。1.3 MapReduce与词频统计的关系 著云台的分析师团队认为,大数据(Big data)通常用来形容一个公司创造的大量非结构化数据和半结构化数据,这些数据在下载到关系型数据库用于分析时会花费过多时间和金钱。大数据分析常和云计算联系到一起,因为实时的大型数据集分析需要像MapReduce一样的框架来向数十、数百或甚至数千的电脑分配工作。大数据需要特殊的技术,以有效地处理大量的容忍经过时间内的数据。适用于大数据的技术,包括大规模并行处理(MPP)数据库、数据挖掘电网、分布式文
19、件系统、分布式数据库、云计算平台、互联网和可扩展的存储系统。所以象MapReduce这样的大规模并行处理 与 词频统计这类的数据统计和挖掘技术是密切相关的。2.开发平台简介与关键技术 2.1.开发平台简介 2.1.1.Hadoop Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。?3基于MapReduce并计算的词频统计的研究Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在
20、低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。2.1.2.Hadoop核心架构 Hadoop 由许多元素构成。其最底部是 Hadoop Distributed File System(HDFS),它存储 Hado
21、op 集群中所有存储节点上的文件。HDFS(对于本文)的上一层是MapReduce 引擎,该引擎由 JobTrackers 和 TaskTrackers 组成。通过对Hadoop分布式计算平台最核心的分布式文件系统HDFS、MapReduce处理过程,以及数据仓库工具Hive和分布式数据库Hbase的介绍,基本涵盖了Hadoop分布式平台的所有技术核心完整的操作系统主要由四部分组成:硬件、操作系统内核、操作系统服务和用户应用程序,如图2-1所示。操作系统是一套复杂的管理控制程序,包括五方面的管理功能:进程处理机管理、存储管理、设备管理、文件管理和用户管理。2.1.3.Hadoop的子项目 HD
22、FS:Hadoop分布式文件系统(Distributed File System)HDFS(Hadoop Distributed File System)MapReduce:并行计算框架,0.20前使用 org.apache.hadoop.mapred 旧接口,0.20版本开始引入org.apache.hadoop.mapreduce的新API HBase:类似Google BigTable的分布式NoSQL列数据库。(HBase和Avro已经于2010年5月成为顶级 Apache 项目)Hive:数据仓库工具,由Facebook贡献。Zookeeper:分布式锁设施,提供类似Google C
23、hubby的功能,由Facebook贡献。Avro:新的数据序列化格式与传输工具,将逐步取代Hadoop原有的IPC机制。Pig:大数据分析平台,为用户提供多种接口。Ambari:Hadoop管理工具,可以快捷的监控、部署、管理集群。Sqoop:于在HADOOP与传统的数据库间进行数据的传递。2.1.4.Hadoop与MapReduce的区别 Hadoop是一种分布式数据和计算的框架。它很擅长存储大量的半结构化的数据集。数据可以随机存放,所以一个磁盘的失败并不会带来数据丢失。Hadoop也非常擅长分布式计算快速地跨多台机器处理大型数据集合。MapReduce是处理大量半结构化数据集合的编程模型
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 MapReduce 并行 计算 词频 统计 研究
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。