知识卡片

HBase RowKey设计三原则

专业/工作 · 1206.d

内容

HBase只能靠rowkey做高效检索,因此rowkey设计要同时满足三个原则:唯一性、长度适中、散列均匀。这三条本质上是同一件事的不同侧面:rowkey是这类KV存储里唯一的索引入口,设计得好坏直接决定了查询效率和集群负载是否均衡,出问题后很难像关系数据库那样后补二级索引来补救。

参考来源

- 位置:《用户画像:方法论与工程化解决方案》第3章《标签数据存储》(源文件:_epub-src/OEBPS/text00038.html) - 结论依据:原文围绕“由于HBase通过rowkey对数据进行检索,而rowkey由于长度限制的因素不能将”给出定义、场景或处理方式,支撑卡片对“HBase RowKey设计三原则”的概括。 - 原始内容:由于HBase通过rowkey对数据进行检索,而rowkey由于长度限制的因素不能将很多查询条件拼接在rowkey中,因此HBase无法像关系数据库那样根据多种条件对数据进行筛选。一般地,HBase需建立二级索引来满足根据复杂条件查询数据的需求。