hbase 调优

本文详细介绍了HBase的调优方法,包括JVM参数设置,如-Xms、-Xmx、-XX:ParallelGCThreads等,以优化内存管理和垃圾回收。同时,还讨论了HBase服务端参数,如hbase.regionserver.handler.count、hbase.hregion.max.filesize和hbase.hregion.memstore.flush.size等,旨在提升服务性能和稳定性。此外,还提及了客户端和Zookeeper、HDFS的相关调优建议。
摘要由CSDN通过智能技术生成

一、JVM调优

-Xms                                           初始堆大小
-Xmx                                           最大堆大小
-XX:ParallelGCThreads             并行收集器的线程数:    8+(logical processors-8)(5/8)
-XX:MaxGCPauseMillis             每次年轻代垃圾回收的最长时间(最大暂停时间):如果无法满足此时间,JVM会自动调整年轻代大小,以满足此值.
-XX:+ParallelRefProcEnabled 使用多线程并行处理
-XX:-ResizePLAB                     取消内存整理
-XX:G1NewSizePercent           使得Eden空间保持1GB左右。 例如: 
- 32GB heap,-XX:G1NewSizePercent=3 
- 64GB heap, -XX:G1NewSizePercent=2 
- 100GB heap以上,-XX:G1NewSizePercent=1 

-XX:+UseG1GC 
-Xms100g -Xmx100g 
-XX:MaxGCPauseMillis=100 
-XX:+ParallelRefProcEnabled 
-XX:-ResizePLAB 
-XX:ParallelGCThreads= 8+(40-8)(5/8)=28 
-XX:G1NewSizePercent=1

二、hbase服务端参数

hbase.regionserver.handler.count
master, regionserver RPC监听数。默认30。
如果请求多且提交的数据量小的时候,可以考虑加大。
如果请求的数据量大,达到MB级的时候,可以考虑减少,以减轻region server的写入压力。

 

hbase.hregion.max.filesize
一个region的文件最大大小。如果超过这个大小,则自动split。
如果无需执行mr,应该禁止自动分割,修改值为100g,由人工执行split。

 

hbase.hregion.majorcompaction
major compact的自动周期。
应该设置为0禁止使用自动major_compact。
手工hbase shell执行脚本调用major_compact命令,或者使用java类org.apache.hadoop.hbase.client.HBaseAdmin的majorCompact方法。
在major compact时,关闭balance,避免RIT。

 

#hbase.hstore.compactionThreshold:HStore的storeFile数量>= compactionThreshold配置的值,则可能会进行compact,默认值为3,可以调大,比如设置为4,在定期的major compact中进行剩下文件的合并,减少合并的次数,不过后果是会影响查询的性能

 

hbase.hstore.blockingStoreFiles
在MemStore flush后

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值