MapReduce工作笔记——Job调度参数设置

2020-09-10 10:42:29 浏览数 (1)

1. JobName

指定有意义JobName, 一般是自己的名字 Job作用。

代码语言:javascript复制
mapred.job.name="xxx_test"

2. Reduce的个数

说明1

代码语言:javascript复制
mapred.reduce.tasks

3. Job的task并发数

代码语言:javascript复制
#  mapper
mapred.job.max.map.running

#  reducer
mapred.job.max.reduce.running

4. 设置Job的失败比例

代码语言:javascript复制
#  mapper
mapred.max.map.failures.percent

#  reducer
mapred.max.reduce.failures.percent

5. 设置Job的优先级

代码语言:javascript复制
mapred.job.priority
# LOW、VERY_LOW、NORMAL、HIGH、VERY_HIGH 五种类型

6. 设置task的超时时间

代码语言:javascript复制
mapred.task.timeout
# (单位:毫秒)

7. 预测执行

代码语言:javascript复制
mapred.map.tasks.speculative.execution  // 默认打开为true,关闭请显式设置为false
mapred.reduce.tasks.speculative.execution  // 默认打开为true,关闭请显式设置为false
  1. 如果用户不主动设置Reduce个数,系统默认启动一个Reduce。如果用户处理数据量过大(>10G),则会影响Reduce的处理速度。 根据map的输出量合理设置reduce的个数,请确保每个reduce处理的数据不超过10G 通过如下参数指定reduce个数.

0 人点赞