1、regionserver请求不均匀
1)节点上的regions的个数是否基本一致,如果不一致做balance。
1 2 3 4 5 6 |
|
2)如果region一致的情况下,请求量仍然差异很大,这时候需要排查rowkey的设计和分布。
下面这些节点在regions数量基本一致的情况下,request差异很大。
hbase UI:http://192.168.8.8:60010/master-status
2、rowkey hotspotting问题
hbase cf:column的存储按照rowkey的字母表顺序存储,rowkry前缀相同或者相近的行更容易写入到同一个region中,出现热点region,比如日志数据以timestampe开头。
处理方法:
1)逆序存储rowkey,把无序的rowkey部分放到前面。
2)rowkey前面加入随机数字
3)加盐处理(salt)
负面影响:
1) 客户端数据读取更复杂,更多的逻辑代码,甚至影响性能。
2)scan查询不能正常使用。
3、对rowkey加盐(slat)
1 2 3 4 5 6 7 8 9 |
|
加盐后的效果,已经均匀了很多。