regionserver请求不均匀
1)节点上的的个数是否基本一致,如果不一致做。
#开启(hbase-0.94)
hbase shell
> true
#关闭
> false
2)如果一致的情况下,请求量仍然差异很大,这时候需要排查的设计和分布。
下面这些节点在数量基本一致的情况下,差异很大。
hbase UI::60010/-
2、 问题
hbase cf:的存储按照的字母表顺序存储,前缀相同或者相近的行更容易写入到同一个中,出现热点,比如日志数据以开头。
处理方法:
1)逆序存储,把无序的部分放到前面。
2)前面加入随机数字
3)加盐处理(salt)
负面影响:
1) 客户端数据读取更复杂,更多的逻辑代码,甚至影响性能。
2)scan查询不能正常使用。
3、对加盐(slat)
long ( str)
long hash = str.();
for(int i = 0; i < str.(); i++)
hash = ((hash > 27)) ^ str.(i);
hash;
加盐后的效果,已经均匀了很多。