资源相关参数

  //以下参数是在用户自己的 MapReduce 应用程序中配置就可以生效

(1) mapreduce.map.memory.mb: 一个 Map Task 可使用的内存上限(单位:MB),默认为 1024。如果 Map Task 实际使用的资源量超过该值,则会被强制杀死。

(2) mapreduce.reduce.memory.mb: 一个 Reduce Task 可使用的资源上限(单位:MB),默认为 1024。如果 Reduce Task 实际使用的资源量超过该值,则会被强制杀死。

(3) mapreduce.map.cpu.vcores: 每个 Maptask 可用的最多 cpu core 数目, 默认值: 1

(4) mapreduce.reduce.cpu.vcores: 每个 Reducetask 可用最多 cpu core 数目默认值: 1

(5) mapreduce.map.java.opts: Map Task 的 JVM 参数,你可以在此配置默认的 java heap size 等参数, 例如:“-Xmx1024m -verbose:gc -Xloggc:/tmp/@taskid@.gc”(@taskid@会被 Hadoop 框架自动换为相应的 taskid), 默认值: “”

(6) mapreduce.reduce.java.opts: Reduce Task 的 JVM 参数,你可以在此配置默认的 javaheap size 等参数, 例如:“-Xmx1024m -verbose:gc -Xloggc:/tmp/@taskid@.gc”, 默认值: “”

  //应该在 yarn 启动之前就配置在服务器的配置文件中才能生效

(1) yarn.scheduler.minimum-allocation-mb RM 中每个容器请求的最小配置,以 MB 为单位,默认 1024。

(2) yarn.scheduler.maximum-allocation-mb RM 中每个容器请求的最大分配,以 MB 为单位,默认 8192。

(3) yarn.scheduler.minimum-allocation-vcores 1

(4)yarn.scheduler.maximum-allocation-vcores 32

(5) yarn.nodemanager.resource.memory-mb 表示该节点上YARN可使用的物理内存总量,默认是 8192(MB),注意,如果你的节点内存资源不够 8GB,则需要调减小这个值,而 YARN不会智能的探测节点的物理内存总量。

  //shuffle 性能优化的关键参数,应在 yarn 启动之前就配置好

(1) mapreduce.task.io.sort.mb   100   shuffle 的环形缓冲区大小,默认 100m

(2) mapreduce.map.sort.spill.percent   0.8   环形缓冲区溢出的阈值,默认 80%

容错相关参数

(1) mapreduce.map.maxattempts: 每个 Map Task 最大重试次数,一旦重试参数超过该值,则认为 Map Task 运行失败,默认值:4。

(2) mapreduce.reduce.maxattempts: 每个Reduce Task最大重试次数,一旦重试参数超过该值,则认为 Map Task 运行失败,默认值:4。

(3) mapreduce.map.failures.maxpercent: 当失败的 Map Task 失败比例超过该值,整个作业则失败,默认值为 0. 如果你的应用程序允许丢弃部分输入数据,则该该值设为一个大于 0 的值,比如 5,表示如果有低于 5%的 Map Task 失败(如果一个 Map Task 重试次数超过mapreduce.map.maxattempts,则认为这个 Map Task 失败,其对应的输入数据将不会产生任何结果),整个作业扔认为成功。

(4) mapreduce.reduce.failures.maxpercent: 当失败的 Reduce Task 失败比例超过该值为,整个作业则失败,默认值为 0.

(5) mapreduce.task.timeout:如果一个task在一定时间内没有任何进入,即不会读取新的数据,也没有输出数据,则认为该 task 处于 block 状态,可能是临时卡住,也许永远会卡住。为了防止因为用户程序永远 block 不退出,则强制设置了一个超时时间(单位毫秒),默认是600000,值为 0 将禁用超时。。

效率跟稳定性参数

(1) mapreduce.map.speculative: 是否为 Map Task 打开推测执行机制,默认为 true, 如果为 true,则可以并行执行一些 Map 任务的多个实例。

(2) mapreduce.reduce.speculative: 是否为 Reduce Task 打开推测执行机制,默认为 true

(3)mapreduce.input.fileinputformat.split.minsize: FileInputFormat做切片时最小切片大小,默认 1。

(4)mapreduce.input.fileinputformat.split.maxsize: FileInputFormat做切片时最大切片大小

  推测执行机制(Speculative Execution):它根据一定的法则推测出“拖后腿”的任务,并为这样的任务启动一个备份任务,让该任务与原始任务同时处理同一份数据,并最终选用最先成功运行完成任务的计算结果作为最终结果。

最新文章

  1. Ubuntu下安装php7后无法启动Apache
  2. HDU 3999 二叉排序树
  3. win2003超过最大连接数
  4. 编写category时的便利宏(用于解决category方法从静态库中加载需要特别设置的问题)
  5. 《javascript高级程序设计》 第20章 JSON
  6. vue.js插件使用(01) vue-resource
  7. android invalidate 执行流程详解
  8. NET Core 静态文件及JS包管理器(npm, Bower)的使用
  9. Shapely介绍及用户手册
  10. 用Eclipse 统计代码行数小技巧
  11. Google Chrome调试js代码
  12. timestamp时间戳的应用(微信小程序开发也一样)
  13. python小练习之读取文件写入excel
  14. 我如何踏上IT路
  15. mybatis 使用注解简化xml映射文件
  16. 函数嵌套定义,闭包及闭包的应用场景,装饰器,global.nonlocal关键字
  17. R语言绘图(FZ)
  18. break与continue,return结束循环区别
  19. CCSUOJ评测系统——第四次scrum冲刺
  20. Internet History, Technology and Security (Week 5-2)

热门文章

  1. js中报错"Maximum call stack size exceeded"解决方法
  2. Java - 自定义异常(尚学堂第六章异常机制作业计算平均数)
  3. XNA 中3D模型的显示
  4. html5实现判断拍照旋转角度等功能
  5. OpenGL6-纹理动画
  6. 利用kvo对集合进行操作
  7. leetcode_173【二叉搜索树迭代器】
  8. 连锁咖啡厅B/S架构点餐系统开发
  9. 推荐几款基于Bootstrap的响应式后台管理模板
  10. 西数常用TREX命令