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 |