第09讲-MapReduce计算框架与应用_第1页
第09讲-MapReduce计算框架与应用_第2页
第09讲-MapReduce计算框架与应用_第3页
第09讲-MapReduce计算框架与应用_第4页
第09讲-MapReduce计算框架与应用_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第09章

MapReduce计算框架与应用

MapReduce计算框架计算过程分析编程实践1复习2数据中心部署示例34提出问题:怎样高效率处理(计算)大数据?5单机条件下的串行代码67《大数据技术》1.MapReduce计算框架8《大数据技术》1.MapReduce计算框架91011《大数据技术》1.1计算框架概览MapReduce是一个并行计算软件框架,能自动完成计算任务的并行化处理,包括作业调度、数据分片、在集群节点上分配和执行任务、收集计算结果和输出。也包括数据通信和容错处理等并行计算涉及的很多底层复杂细节,大大减轻了软件开发人员的负担。MapReduce是一个并行程序设计模型,提供一种简便的并行程序设计方法,用Map和Reduce两个函数实现基本的并行计算,简化了大规模数据处理程序设计。2004年谷歌公布了MapReduce技术原理,同年Hadoop开发者借鉴谷歌技术实现开源的HadoopMapReduce1.MapReduce计算框架12《大数据技术》1.MapReduce计算框架

Map和Reduce函数的输入输出函数输入输出说明Map<k1,v1>List(<k2.v2>)数据集解析成<Key,Value>对,输入Map函数,处理后输出一批<Key,Value>中间结果Reduce<k2,List(v2)><k3,v3>Map函数的输出经过合并、排序处理后就是Reduce函数的输入,List(v2)表示一批属于同一个k2的value值Map和Reduce函数都是以<Key,Value>为输入,以另一个或一批<Key,Value>为输出。13《大数据技术》1.MapReduce计算框架1.2主要组件分析MapReduce包含四个组成部分,分别是Client、JobTracker、TaskTracker和Task。14《大数据技术》15MapReduce的工作流程一般分为分片、Map任务、Shuffle、Reduce任务、写入文件5个步骤。2.计算过程分析《大数据技术》16理解MapReduce的关键点:作业如何分解?(Map数越大并行度越高)作业如何调度/任务如何分配?Map与Reduce之间如何衔接?2.计算过程分析《大数据技术》172.1Map阶段Map阶段执行过程如图所示。Map阶段对输入的<Key,Value>键值对进行处理,然后产生一系列的中间结果,通常一个split分片对应一个map任务,有几个split就有几个map任务。2.计算过程分析《大数据技术》182.2Reduce阶段ReduceTask从MapTask拉取数据

归并拉取过来的数据,再对归并后的数据进行排序数据输入给ReduceTask2.计算过程分析《大数据技术》19设系统配置的分块大小为128M(blockSize,2.7版以前的Hadoop为64M)则对每一个输入文件,反复用128M切分文件,得到整分片数;若剩余文件大小除128小于1.1,则计算为一个分片;若剩余文件大小除128大于1.1,则重复用128M进行切分Map数=分片数2.计算过程分析《大数据技术》20作业初始化的分片(split)算法设系统配置的分块大小为128M(blockSize,2.7版以前的Hadoop为64M)则对每一个输入文件,反复用128M切分文件,得到整分片数;若剩余文件大小除128小于1.1,则计算为一个分片;若剩余文件大小除128大于1.1,则重复用128M进行切分Map数=分片数2.计算过程分析《大数据技术》21例1若输入文件为268M,首先分出1个128M的分片;剩下268-128=140,140/128=1.09<1.1,为一个分片,所以共计2个分片例2输入10个100M的文件,则有10个分片2.计算过程分析《大数据技术》22练习与思考1、设输入1个127M的文件,系统得到的分片数是多少?2、如何提高这个127M文件的Map数?如果应用程序没有输入数据,Map数则由用户指定,或由系统设置2.计算过程分析《大数据技术》23作业调度机制2.计算过程分析《大数据技术》24任务分配方法

作业分配资源后即开始执行任务JobTracker负责分配任务到节点TaskTracker监控任务并报告状态就近计算:移动计算以靠近数据task出错时,系统分配新节点2.计算过程分析《大数据技术》252.3shuffle阶段2.计算过程分析《大数据技术》263.1第一个MapReduct程序:WordCount3.编程实践27《大数据技术》28三种运行程序的方法

直接运行程序

通过命令运行[root@masterhadoop-3.3.4]#./bin/hadoopjarmr_wordcount-1.0-SNAPSHOT.jarcom.jyp.WordCountJob3.编程实践《大数据技术》29在Hadoop平台打包代码以及运行程序[root@masterhadoop-3.3.4]#cd/home/swxy/hadoop-3.3.4/[root@masterhadoop-3.3.4]#export

CLASSPATH="/home/swxy/hadoop3.3.4/share/hadoop/common/hadoop-common-3.3.4.jar:/home/swxy/hadoop-3.3.4/share/hadoop/mapreduce/hadoop-mapreduce-client-core-3.3.4.jar:/home/swxy/hadoop-3.3.4/share/hadoop/common/lib/commons-cli-1.2.jar:$CLASSPATH"3.编程实践《大数据技术》30编译命令如下:[root@masterhadoop-3.3.4]#javacWordCount.java打包命令如下:[root@masterhadoop-3.3.4]#jar-cvfWordCount.jar*.class启动Hadoop之后,我们可以运行程序,命令如下:[root@masterhadoop-3.3.4]#./bin/hadoopjarWordCount.jarWordCount/jyp/CollegeEntraExam.txt/jyp/result/wordcount_jyp3.编程实践《大数据技术》313.2制造业成长能力指标分析湖南省4个先进制造业成长能力指标3.编程实践公司年份营业总收入(亿元)毛利润(亿元)归属净利润(亿元)扣非净利润(亿元)营业总收入同比增长(%)归属净利润同比增长(%)扣非净利润同比增长(%)三一重工2022808.2192.242.7331.27-24.38-64.49-69.62三一重工20211069274.3120.3102.96.81-22.04-26.22三一重工20201001296.2154.3139.531.2536.2833.96中联重科2022416.390.8823.0612.93-37.98-63.22-77.82中联重科2021671.3158.562.7058.283.11-13.88-7.61中联重科2020651.1186.272.8163.0950.3466.5579.51铁建重工2022101.034.4218.4417.166.146.268.91铁建重工202195.1730.8217.3515.7525.0510.7412.53铁建重工202076.1126.1715.6714.004.522.45-0.44山河智能202273.0215.59-11.38-12.31-35.99-457.26-655.81山河智能2021114.126.463.1852.21621.65-43.62-49.72山河智能202093.7725.925.6494.40726.2512.354.3932年份比例2022三一重工(0.58%)中联重科(0.30%)铁建重工(0.07%)山河智能(0.05%)2021三一重工(0.55%)中联重科(0.34%)山河智能(0.06%)铁建重工(0.05%)2020三一重工(0.55%)中联重科(0.36%)山河智能(0.05%)铁建重工(0.04%)

湖南省4个先进制造业“产品市场相对占有率”分析

湖南省4个先进制造业“主营业务收入增长率”分析制造业主营业务收入增长率三一重工(2022)-0.24396632366697843三一重工(2021)0.06793206793206794三一重工(2020)0.3131313131313132山河智能(2022)-0.3600350569675723山河智能(2021)0.21680708115602004山河智能(2020)0.2625555405951259铁建重工(2022)0.061258800042030034铁建重工(2021)0.2504270135330443铁建重工(2020)0.04517989563306793中联重科(2022)-0.3798599731863548中联重科(2021)0.031024420211948903中联重科(2020)0.5033479565920113.编程实践《大数据技术》33

计算分为Map和Reduce两大阶段;Map包括作业启动、作业初始化、任务分配、任务执行和部分Shuffle;Reduce阶段包括部分Shuffle、任务执行和作业完成。

难点:作业分解、作业调度、任务分配、ShuffleMapReduce作为分布式并行计算框架,主要由JobClient、JobTracker、TaskTracker等组件构成

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论