已阅读5页,还剩3页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验报告课程:_云计算_实验题目:_HDFS下的MapReduce编程应用_专业:_软件工程_姓名:_王磊_学号:_B1040914_(1)书写MapReduce的原理以及执行过程1.MapReduce库先把user program的输入文件划分为M份(M为用户定义),每一份通常有16MB到64MB,如图左方所示分成了split04;然后使用fork将用户进程拷贝到集群内其它机器上。 2.user program的副本中有一个称为master,其余称为worker,master是负责调度的,为空闲worker分配作业(Map作业或者Reduce作业),worker的数量也是可以由用户指定的。3.被分配了Map作业的worker,开始读取对应分片的输入数据,Map作业数量是由M决定的,和split一一对应;Map作业从输入数据中抽取出键值对,每一个键值对都作为参数传递给map函数,map函数产生的中间键值对被缓存在内存中。4.缓存的中间键值对会被定期写入本地磁盘,而且被分为R个区,R的大小是由用户定义的,将来每个区会对应一个Reduce作业;这些中间键值对的位置会被通报给master,master负责将信息转发给Reduce worker。5.master通知分配了Reduce作业的worker它负责的分区在什么位置(肯定不止一个地方,每个Map作业产生的中间键值对都可能映射到所有R个不同分区),当Reduce worker把所有它负责的中间键值对都读过来后,先对它们进行排序,使得相同键的键值对聚集在一起。因为不同的键可能会映射到同一个分区也就是同一个Reduce作业(谁让分区少呢),所以排序是必须的。6.reduce worker遍历排序后的中间键值对,对于每个唯一的键,都将键与关联的值传递给reduce函数,reduce函数产生的输出会添加到这个分区的输出文件中。6.当所有的Map和Reduce作业都完成了,master唤醒正版的user program,MapReduce函数调用返回user program的代码。(2)MapReduce程序不同的提交方式;1、用命令行方式提交2、在eclipse中提交作业3、采用eclipse的插件实现项目的提交这三种方式中在eclipse中提交的过程:前提是:1、在你的电脑上安装好eclipse,可以在linux下,也可以在windows环境下哦,这里需要指出的是:提交作业的机器只要有hadoop的API就可以了,和提交作业的机器所处的环境无关。2、成功搭建一个hadoop集群,或成功部署一个伪分布式,并启动hadoop。代码段截图如下:这时候程序只会在eclipse中虚拟的一个云环境中运行,而不会跑上云端去运行.需要在main方法中添加几行代码,代码附录如下:方案三:采用eclipse的插件实现项目的提交 前提:在eclipse中成功地安装mapreduce插件。不过需要提醒各位的是:hadoop-版本自带的插件不够完整,需要作出如下修改:1、将HADOOP_HOME/lib目录下的 commons-configuration-1.6.jar , commons-httpclient-3.0.1.jar , commons-lang-2.4.jar , jackson-core-asl-1.0.1.jar 和 jackson-mapper-asl-1.0.1.jar 等5个包复制到hadoop-eclipse-plugin-.jar的lib目录下。2、然后,修改该包META-INF目录下的MANIFEST.MF,将classpath修改为以下内容:(3)基于MapReduce编程模型实现的对文件数据排序import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.Job;import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;import org.apache.hadoop.mapreduce.lib.input.KeyValueTextInputFormat;import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;import org.apache.hadoop.util.GenericOptionsParser; public class SortMain public static void main(String args) throws ExceptionConfiguration conf = new Configuration(); String otherArgs = new GenericOptionsParser(conf, args).getRemainingArgs(); if (otherArgs.length != 2) System.err.println(Usage: wordcount ); System.exit(2); Job job = new Job(conf, Sort); job.setJarByClass(SortMain.class); job.setInputFormatClass(KeyValueTextInputFormat.class);/设定输入的格式是key(中间t隔开)value job.setMapperClass(SortMapper.class); /job.setCombinerClass(IntSumReducer.class); job.setReducerClass(SortReducer.class); job.setMapOutputKeyClass(IntPair.class); job.setMapOutputValueClass(IntWritable.class); job.setSortComparatorClass(TextIntCompartor.class); job.setGroupingComparatorClass(TextComparator.class);/以key 进行group by job.setPartitionerClass(PartionTest.class); job.setOutputKeyClass(Text.class); job.setOutputValueClass(Text.class); FileInputFormat.addInputPath(job, new Path(otherAr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年下半年浙江省东阳市事业单位招考易考易错模拟试题(共500题)试卷后附参考答案
- 2025年大学《大数据管理与应用-行业大数据应用》考试参考题库及答案解析
- 2025年下半年浙江杭州建德市部分事业单位统一招聘工作人员31人易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年浙江杭州富阳市广播电视台招考2人易考易错模拟试题(共500题)试卷后附参考答案
- 2025年大学《劳动关系-员工福利管理》考试参考题库及答案解析
- 2025年大学《艺术教育-音乐基础与教学》考试备考题库及答案解析
- 2025年下半年浙江丽水缙云县气象局下属事业单位面向全国引进紧缺人才3人易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年济南高新区社会保障局等部门招考协管人员易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年泸州市龙驰实业集团限责任公司及下属子公司招聘3名易考易错模拟试题(共500题)试卷后附参考答案
- 2025年下半年泉州石狮市人力资源公共服务中心招考见习人员易考易错模拟试题(共500题)试卷后附参考答案
- 制作配电箱合同范本
- 2025年二手车评估合同协议
- 并购基金从业考试及答案解析
- 统编版语文四年级上册21古诗三首出塞课件
- 活动公司框架合同范本
- 零碳智慧冷链物流产业园项目建筑工程方案
- cwi考试试题及答案
- 北京化学工业集团有限责任公司集团总部一般管理人员招聘10人笔试考试参考试题及答案解析
- 深部静脉血栓形成预防措施培训
- 2025年人力资源管理师三级认证考试真题试卷(含答案)
- 2025年品牌营销试题及答案详解
评论
0/150
提交评论