• HBase调优案例(三)——Spark访问HBase慢


    负载信息:RegionServer:3个

                      Region:5400多个

    现象:在使用Spark对HBase进行scan操作时发现有些task执行比较慢

    原因分析:查看Spark应用的executor日志,发现查询慢的都是027节点请求的。

         获取此节点的regionServer日志,发现scan的时候有responseTooSlow的打印。

            查询日志发现这段时间在regionServer上出现很多次GC pause的打印,说明当前内存不足。

    综上,当前regionServer内存的配置不足以应付高并发状态下的RPC请求。由于实际节点上的业务量/数据量/请求个数存在略微差异,使027节点处理请求时GC出现了延迟。当Spark多并发task执行的时候,GC的pause不能及时地处理查询请求,从而影响整个查询的时间。

    解决:

      调整HMaster的内存及Handler相关配置

      1.调整HMaster和RegionServer的GC_OPTS(垃圾回收参数)

      RegionServer调整为:

      Xms 6G——>16G

      -Xmx 6G——>16G

      NewSize 64M——>512M

      Max NewSize 128M——>512M

      Max DirectMemorySize 128M——>1024M

      HMaster调整为:

      Xms 1G——2G

      -Xmx 1G——>2G

      NewSize 64M——>256M

      Max NewSize 128M——>512M

      Max DirectMemorySize 128M——>512M

      2.调整RPC Handler(regionServer上处理RPC请求的线程实例数)

      hbase.regionserver.handler.count 100——>300

      hbase.regionserver.metahandler.count 10——>100

  • 相关阅读:
    hdu3874
    spoj D-query
    hdu4348
    hdu4417
    hdu2665
    [LUOGU] P1057 传球游戏
    [CODEVS] 2193 数字三角形WW
    [CODEVS] 2189 数字三角形W
    [模板] 线段树
    [模板] 树状数组
  • 原文地址:https://www.cnblogs.com/lingluo2017/p/8727942.html
Copyright © 2020-2023  润新知