如何避免hbase中行键的热点问题

如何避免hbase中行键的热点问题

热点的概念:就是大量的访问都集中在一个或者极少数节点,造成此节点下的服务器超负荷工作
甚至导致region不可用。同时也会影响节点中的其他region,导致主机无法服务其他region
故对rowkey的设计至关总要。

避免热点
1、加盐,在rowkey的前面加上随机数,使之排序与前面的不同。
分配的前缀种类数量应该和你想使数据分散到不同的 region 的数量一致
如果你有一些 热点 rowkey 反复出现在其他分布均匀的 rwokey 中,加盐是很有用的。
它将写请求分散到多个 RegionServers,但是对读造成了一些负面影响
2、哈希
3、翻转:翻转固定长度或者数字格式的rowkey。这样可以使得rowkey中经常改变的部分(最没意义的部分)放在前面。
这样可以有效的随机 rowkey,但是牺牲了 rowkey 的有序性。
4、尽量减小行和列的大小
5、列簇越短越好

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值