MapReduce相关配置参数分为两部分,分别是JobHistory Server和应用程序参数,Job History可运行在一个独立节点上,而应用程序参数则可存放在mapred-site.xml中作为默认参数,也可以在提交应用程序时单独指定,注 意,如果用户指定了参数,将覆盖掉默认参数。
以下这些参数全部在mapred-site.xml中设置。
1. MapReduce JobHistory相关配置参数
在JobHistory所在节点的mapred-site.xml中配置。
(1) mapreduce.jobhistory.address
参数解释:MapReduce JobHistory Server地址。
默认值: 0.0.0.0:10020
(2) mapreduce.jobhistory.webapp.address
参数解释:MapReduce JobHistory Server Web UI地址。
默认值: 0.0.0.0:19888
(3) mapreduce.jobhistory.intermediate-done-dir
参数解释:MapReduce作业产生的日志存放位置。
默认值: /mr-history/tmp
(4) mapreduce.jobhistory.done-dir
参数解释:MR JobHistory Server管理的日志的存放位置。
默认值: /mr-history/done
2. MapReduce作业配置参数
可在客户端的mapred-site.xml中配置,作为MapReduce作业的缺省配置参数。也可以在作业提交时,个性化指定这些参数。
参数名称 | 缺省值 | 说明 |
mapreduce.job.name | 作业名称 | |
mapreduce.job.priority | NORMAL | 作业优先级 |
yarn.app.mapreduce.am.resource.mb | 1536 | MR ApplicationMaster占用的内存量 |
yarn.app.mapreduce.am.resource.cpu-vcores | 1 | MR ApplicationMaster占用的虚拟CPU个数 |
mapreduce.am.max-attempts | 2 | MR ApplicationMaster***失败尝试次数 |
mapreduce.map.memory.mb | 1024 | 每个Map Task需要的内存量 |
mapreduce.map.cpu.vcores | 1 | 每个Map Task需要的虚拟CPU个数 |
mapreduce.map.maxattempts | 4 | Map Task***失败尝试次数 |
mapreduce.reduce.memory.mb | 1024 | 每个Reduce Task需要的内存量 |
mapreduce.reduce.cpu.vcores | 1 | 每个Reduce Task需要的虚拟CPU个数 |
mapreduce.reduce.maxattempts | 4 | Reduce Task***失败尝试次数 |
mapreduce.map.speculative | false | 是否对Map Task启用推测执行机制 |
mapreduce.reduce.speculative | false | 是否对Reduce Task启用推测执行机制 |
mapreduce.job.queuename | default | 作业提交到的队列 |
mapreduce.task.io.sort.mb | 100 | 任务内部排序缓冲区大小 |
mapreduce.map.sort.spill.percent | 0.8 | Map阶段溢写文件的阈值(排序缓冲区大小的百分比) |
mapreduce.reduce.shuffle.parallelcopies | 5 | Reduce Task启动的并发拷贝数据的线程数目 |
注意,MRv2重新命名了MRv1中的所有配置参数,但兼容MRv1中的旧参数,只不过会打印一条警告日志提示用户参数过期。MapReduce新 旧参数对照表可参考Java类org.apache.hadoop.mapreduce.util.ConfigUtil,举例如下:
过期参数名 | 新参数名 |
mapred.job.name | mapreduce.job.name |
mapred.job.priority | mapreduce.job.priority |
mapred.job.queue.name | mapreduce.job.queuename |
mapred.map.tasks.speculative.execution | mapreduce.map.speculative |
mapred.reduce.tasks.speculative.execution | mapreduce.reduce.speculative |
io.sort.factor | mapreduce.task.io.sort.factor |
io.sort.mb | mapreduce.task.io.sort.mb |
原文链接:http://dongxicheng.org/mapreduce-nextgen/hadoop-yarn-configurations-mapreduce/