IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    Mapreduce调优小结

    breezedeer发表于 2020-04-12 17:55:12
    love 0

    基本参数调节

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

    mapreduce.map.memory.mb:

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

    mapreduce.reduce.memory.mb:

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

    mapreduce.map.cpu.vcores:

    每个 Maptask 可用的最多 cpu core 数目, 默认值: 1

    mapreduce.reduce.cpu.vcores:

    每个 Reducetask 可用最多 cpu core 数目默认值: 1

    mapreduce.map.java.opts:

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

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

    yarn.scheduler.minimum-allocation-mb RM

    中每个容器请求的最小配置,以 MB 为单位,默认 1024。

    yarn.scheduler.maximum-allocation-mb RM

    中每个容器请求的最大分配,以 MB 为单位,默认 8192。

    yarn.scheduler.minimum-allocation-vcores 1
    yarn.scheduler.maximum-allocation-vcores 32

    yarn.nodemanager.resource.memory-mb

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

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

    mapreduce.task.io.sort.mb 100

    shuffle 的环形缓冲区大小,默认 100m

    mapreduce.map.sort.spill.percent 0.8

    环形缓冲区溢出的阈值,默认 80%

    精细调节

    主要内存参数调节

    https://blog.csdn.net/z3935212/article/details/78637157
    https://www.cnblogs.com/wcgstudy/p/10788193.html

    Hadoop性能调优全面总结

    https://blog.csdn.net/pansaky/article/details/83347357

    官网

    https://hadoop.apache.org/docs



沪ICP备19023445号-2号
友情链接