作者: Shu, Alison
Hadoop作业性能调优的两种场景:
一、用户观察到作业性能差,主动寻求帮助。
(一)eBayEagle作业性能分析器
1. Hadoop作业性能异常指标
2. Hadoop作业性能调优7个建议
(二)其它参数调优方法
二、Hadoop集群报告异常,发现个别作业导致集群事故。
一、用户观察到作业性能差,主动寻求帮助。
(一)eBay Eagle作业性能分析器
对一般作业性能调优,eBay Eagle[i]的作业性能分析器已经能满足用户大部分需求。eBayEagle作业性能分析包含两个部分,第一部分是根据定量指标,捕捉性能异常的作业。在本文中,我们不考虑Hadoop集群或者节点故障造成作业性能的普遍下降,因此我们认为这些性能指标异常只与Hadoop作业有关,可以通过性能调优来改善。第二部分是调优建议。根据Hadoop作业性能异常指标判断作业是否需要调优,再综合采用第二部分的建议。第二部分也可以作为Hadoop作业开发的指引,并在后期性能测试中检查。
1. Hadoop作业性能异常指标
参阅《Hadoop作业性能指标及参数调优实例(一)Hadoop作业性能异常指标》
2. Hadoop作业性能调优的7个建议
参阅《Hadoop作业性能指标及参数调优实例(二)Hadoop作业性能调优7个建议》
(二)eBay Eagle作业分析器之外,我们仍然发现一些简单有用的参数调优办法。
§ 提高Splitmetainfo文件上限以应对输入文件包含大量小文件及文件目录
示例:
$yarn logs -applicationId application_1431213413583_263303-appOwner abc
…
2015-06-02 11:15:37,971 INFO [main]org.apache.hadoop.service.AbstractService: Serviceorg.apache.hadoop.mapreduce.v2.app.MRAppMaster failed in state STARTED; cause:org.apache.hadoop.yarn.exceptions.YarnRuntimeException: java.io.IOException:Split metadata size exceeded 10000000. Aborting job job_1431213413583_263303
…
分析:
输入文件包括大量小文件或者文件目录,造成Splitmetainfo文件超过默认上限。
解决办法:
修改默认作业参数mapreduce.jobtracker.split.metainfo.maxsize =100000000 或者mapreduce.jobtracker.spl