- 引出问题:
- Rowkey的设计, 在hbase中是非常的重要的, 会直接影响到我们查询的效率,不好的rowkey的设计也会直接造成数据的热分布
- 长度性 : 长度最好为10-100 位,太长会导致查询的效率和存储的效率, 最好也是8的倍数
- 唯一性 : 最好保证rowkey的设计是唯一的
- 散列性 : 一般防止数据的分区分配不均衡的几种方式
3.1 盐值散列: 随机数+时间戳 的方式
3.2 字符串反转: 对手机号 或者 时间戳进行 反转
3.3 计算分区号: 根据某一特定的值,计算出分区号, 控制数据的存放位置, (根据业务逻辑将数据放在同一块,提高查找效率)
例:简单: 根据特定条件计算出哈希值,再进行%分区号的方式就可以