在mapreduce应用机制全部完成后,常面临一个常见问题“作业运行太慢”,此时我们需要通过一下几个方面进行调优,一边提升作业运行速度
(1)通过jobtracker的web界面可以查看到本次作业使用的mapper数量,查看每个mapper的平均运行时间,如果mapper运行时间过短(如每个mapper运行10多秒),此时苗明mapper没有得到良好的利用,我们需要减少mapper的数量,使每个maper运行更长的时间。mapper的运行时间取决于mapper输入数据的格式,因此我们可以调整mapper的输入格式。
(2)通过Jobtracker的web界面查看本次作业的reducer数量,集群中的reducer数量应该略小于reducer的任务槽数,使reducer能够在同一个周期完成任务,避免因动态管理产生一个reducer处理俩个任务的情况。
(3)combiner使用是否合理,充分利用combiner可以减少shuffle传输的数据量,网络传输减少了,作业运行速度自然就快了,但combiner要谨慎使用,视情况而定,取平均值得作业尽量不要使用combiner了,会产生较大偏差。
(4)与3类似,还有一种减少网络传输的方式,对map的输出进行压缩,压缩后的数据量减小,同样减轻了网络传输的压力
(5)为了作业排序更合理,可以自定义序列,自定义comparator,但需要注意的是必须确保已实现RawComparator
(6)最后可以调整shuffle,可以调整一些内存管理的参数,以弥补性能的不足
写的比较粗糙,有时间将其中一些细节会补齐。
分享到:
相关推荐
Hadoop企业优化常用的调优参数,资源相关参数:(1)在用户自己的MR应用程序中配置就可以生效(mapred-default.xml)和(2)在YARN启动之前就配置在服务器的配置文件中才能生效(yarn-default.xml);容错相关参数...
Hive及Hadoop作业调优 阿里巴巴内部hive优化经验文档
hadoop作业调优参数整理及原理,并且针对部分的原理和视图详细说明
hadoop实验+作业hadoop实验+作业hadoop实验+作业hadoop实验+作业hadoop实验+作业hadoop实验+作业hadoop实验+作业hadoop实验+作业hadoop实验+作业
Hadoop集群作业的调度算法Hadoop集群作业的调度算法Hadoop集群作业的调度算法
一个基于Hadoop平台进行的单词统计系统,其中包含了伪分布架构,并且包含HDFS数据存储,结合Java后台利用Mapreduce架包进行单词的统计与分析。包含了完整的实践过程,内涵源代码,以及实验命令,内容丰富,实验过程...
大数据技术之Hadoop(优化&新特性).doc详细文档
hadoop作业调度的原理和使用流程 hdfs的原理 mapreduce编程
记录hadoop作业,
NULL 博文链接:https://qindongliang.iteye.com/blog/2036619
hadoop学习过程中的调优总结,Mapreduce/hive相关的调优,Linux层面的一些调优,Mr/hive 的调优
熟悉常用的Linux操作和Hadoop操作
在给出Hadoop系统基本框架的基础上,阐述了MapReduce并行计算框架优化、作业调度优化、HDFS性能优化、HBase性能优化和Hadoop功能增强等研究现状,分析已有技术的优势和不足,并探讨了未来的研究方向.
hadoop HBaseshell常用shell命令,这是工作中整理的一份文档,使用价值很高
在Hadoop MapReduce环境中,如果能预知作业的执行时间,就可在资源分配、任务调度以及负载均衡过程中作出更合理的决策,改善系统性能.在分析Hadoop MapReduce作业执行模式后,提出了一种作业执行时间在线预测方法.该方法...
Hive Hadoop Spark优化
Hadoop 性能优化研究 对研究hadoop的人进行性能优化有一定的帮助
Hadoop集群高可用与性能优化
分布式集群普遍存在负载均衡问题,而Hadoop没有考虑到节点间性能的差异.虽然有负载均衡机制,但是效果不太理想,因此运行过程中经常会出现负载不均衡的情况。针对如上问题,深入分析了Hadoop源代码,理清了Hadoop的...
国科大Hadoop作业.pdf