美文网首页
hbase查询缓慢排查

hbase查询缓慢排查

作者: john瀚 | 来源:发表于2023-06-12 09:27 被阅读0次

1.检查是否开启了major compact
建议:关闭,使用其他方式周期性触发
设置hbase.hregion.majorcompaction=0关闭
在hbaseshell里执行:major compact触发major compact

2.检查RS下的region的数量以及请求数
rs下的region以及对于的HFile数量不宜过多,过多会导致IO被打满。可以手动触发major compact减少小文件(低峰期执行)
请求数如果不均衡,需要重新设置rowkey,均匀分散到集群上。并适当增加rpc Handler的数量

3.检查RS的CPU,io,load
检查下查询缓慢的时候集群中是否有RS的load飙高,大约cpu个数的2倍以上就有问题、
检查下集群的RS的所有的IO,是否飙到90%以上,
如果都很高,看下磁盘是否有问题,是否这个rs成为了热点。可以手动迁移region到负载低的节点上

4.检查RS的GC情况
主要检查是否有fullgc的情况,推荐使用G1,并打开垃圾收集日志,
jvm的内存可以给到机器总内存的80%左右

5.检查是否有别的大查询将集群的cache打满,导致新的业务在查询的时候,需要读磁盘

6.检查hdfs集群的DN是否有问题,gc,cpu,io,load,dn有问题,也会影响数据的读取

7.检查客户端
客户端查询的时候,尽量使用批量查询,增加每次返回的条数,从而减少跟集群交互的次数。
尽量精确查询,不要前缀匹配。如果需要前缀匹配,尽量指定范围

8.如果还是慢
1.开启bloomfilter过滤
2.使用二级索引
3.增加集群规模

相关文章

网友评论

      本文标题:hbase查询缓慢排查

      本文链接:https://www.haomeiwen.com/subject/lpofydtx.html