MapReduce任务commit阶段优化
操作场景
默认情况下,如果一个MR任务会产生大量的输出结果文件,那么该job在最后的commit阶段,会耗费较长的时间将每个task的临时输出结果commit到最终的结果输出目录。特别是在大集群中,大Job的commit过程会严重影响任务的性能表现。
针对以上情况,可以通过将以下参数“mapreduce.fileoutputcommitter.algorithm.version”配置为“2”,来提升MR Job commit阶段的性能。
操作步骤
参数入口:
进入Yarn服务参数“全部配置”界面,在搜索框中输入参数名称。具体操作请参考修改集群服务配置参数章节。
| 参数 | 描述 | 默认值 | 
|---|---|---|
| mapreduce.fileoutputcommitter.algorithm.version | 用于指定Job的最终输出文件提交的算法版本,取值为“1”或“2”。 
         说明: 
         版本2为建议的优化算法版本。该算法通过让任务直接将每个task的输出结果提交到最终的结果输出目录,从而减少大作业的输出提交时间。 | 2 | 
 
  