开发者社区> 问答> 正文

MapReduce中调优参数的资源相关参数有哪些?

MapReduce中调优参数的资源相关参数有哪些?

展开
收起
真的很搞笑 2021-12-05 01:10:58 280 0
1 条回答
写回答
取消 提交回答
  • (1)以下参数是在用户自己的 mr 应用程序中配置就可以生效(mapred-default.xml)。 ①mapreduce.map.memory.mb 一个 Map Task 可使用的资源上限(单位:MB),默认为 1024。如果 Map Task实际使用的资源量超过该值,则会被强制杀死。 ②mapreduce.reduce.memory.mb 一个 Reduce Task 可使用的资源上限(单位:MB),默认为 1024。如果Reduce Task实际使用的资源量超过该值,则会被强制杀死。 ③mapreduce.map.cpu.vcores 每个 Map task 可使用的最多 cpu core数目,默认值: 1 ④mapreduce.reduce.cpu.vcores 每个 Reduce task 可使用的最多 cpu core 数目,默认值: 1 ⑤mapreduce.reduce.shuffle.parallelcopies 每个 reduce 去 map 中拿数据的并行数。默认值是 5 ⑥mapreduce.reduce.shuffle.merge.percent buffer 中的数据达到多少比例开始写入磁盘。默认值 0.66 ⑦mapreduce.reduce.shuffle.input.buffer.percent buffer 大小占 reduce 可用内存的比例。默认值 0.7 ⑧mapreduce.reduce.input.buffer.percent 指定多少比例的内存用来存放 buffer中的数据,默认值是 0.0

    (2)应该在 yarn 启动之前就配置在服务器的配置文件中才能生效(yarn-default.xml)。 ①yarn.scheduler.minimum-allocation-mb 1024 给应用程序 container 分配的最小内存 ②yarn.scheduler.maximum-allocation-mb 8192 给应用程序 container 分配的最大内存 ③yarn.scheduler.minimum-allocation-vcores 1 每个 container 申请的最小 CPU 核 数 ④yarn.scheduler.maximum-allocation-vcores 32 每个 container 申请的最大 CPU 核 数 ⑤yarn.nodemanager.resource.memory-mb 8192 给 containers 分配的最大物理内存

    (3)shuffle 性能优化的关键参数,应在 yarn 启动之前就配置好(mapred-default.xml)。 ①mapreduce.task.io.sort.mb 100 shuffle 的环形缓冲区大小,默认100m ②mapreduce.map.sort.spill.percent 0.8 环形缓冲区溢出的阈值,默认80%

    2021-12-05 01:11:26
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
MaxCompute SQL计算成本调优以及优化方法 立即下载
MaxCompute Logview参数详解和问题排查(废弃) 立即下载
低代码开发师(初级)实战教程 立即下载