三十八讲mapreduce程序优化.pptx

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

离线数据分析平台实战培训

讲师:gerryliu(北风网)

第三十八讲MapReduce程序优化

完成情况

模块名

完成情况

用户基本信息分析(MR)

完成

浏览器信息分析(MR)

完成

地域信息分析(MR)

完成

外链信息分析(MR)

完成

用户浏览深度分析(Hive)

未完成

订单分析(Hive)

未完成

事件分析(Hive)

未完成

充分的利用机器的性能,更快的完成mr程序的计算任务。甚至是在有限的机器条件下,能够支持运行足够多的mr程序。说的直接一点就是:调优就是使有限的机器集群完成足够多的任务job,只有当实在是缺少机器的情况下,才会再向集群中添加机器,扩充集群。

调优的目的

从mr程序的内部运行机制,我们可以了解到一个mr程序由mapper和reducer两个阶段组成,其中mapper阶段包括数据的读取、map处理以及写出操作(排序和合并/sortmerge),而reducer阶段包含mapper数据的获取、数据合并(sortmerge)、reduce处理以及写出操作。那么在这七个子阶段中,能够进行较大力度的进行调优的就是map输出、reducer数据合并以及reducer个数这三个方面的调优操作。也就是说虽然性能调优包括cpu、内存、磁盘io以及网络这四个大方面,但是从mr程序的执行流程中,我们可以知道主要有调优的是内存、磁盘io以及网络。在mr程序中调优,主要考虑的就是减少网络传输和减少磁盘IO操作,故本次课程的mr调优主要包括服务器调优、代码调优、mapper调优、reducer调优以及runner调优这五个方面。

调优的总体概述

服务器调优主要包括服务器参数调优和jvm调优。在本次项目中,由于我们使用hbase作为我们分析数据的原始数据存储表,所以对于hbase我们也需要进行一些调优操作。除了参数调优之外,和其他一般的java程序一样,还需要进行一些jvm调优。

服务器调优主要包括hdfs参数调整、hbase参数调整、mapreduce参数调整。详见..\文档\mapreduce调优.txt

服务器调优

代码调优,主要是在mapper和reducer类中,针对多次创建的对象,进行代码提出操作,优化代码结构。这个和一般的java程序的代码调优一样。

代码调优主要就是java程序的一般调优方式。详见..\文档\mapreduce调优.txt

代码调优

mapper阶段包括三部分,即:输入(InputFormat)、处理和输出。一般情况下,对于输入操作不进行任何的优化操作,对于处理部分采用代码优化即可,重点是对应输出部分进行优化,减少输出量,降低网络传输量和磁盘溢出(IO)操作。mapper调优主要就是就一个目标:减少输出量。我们可以通过增加combine阶段以及对输出进行压缩设置进行mapper调优。详见..\文档\mapreduce调优.txt以及runner调优部分介绍(会指定参数)。

mapper调优

reducer调优主要可以通过两部分进行调优设置,第一是设置reducer的个数来进行调优设置,第二部分是根据数据量的多少进行内存设置,减少磁盘溢出操作。其中简单方便有效的就是设计reducer的个数。详见..\文档\mapreduce调优.txt

reducer调优

runner调优其实就是在提交job的时候设置job参数,一般都可以通过代码和xml文件两种方式进行设置。其实runner调优就包含了mapper调优和reducer调优,也就是说需要在runner提交的job中携带对应的参数。详见..\文档\mapreduce调优.txt

注意:hbase客户端调优只涉及到一个cache的操作,详见代码TransformerBaseRunner的initScans方法

runner调优

欢迎访问我们的官方网站

文档评论(0)

187****4471 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档