美文网首页HBase大数据
HBase - 二级索引设计思想

HBase - 二级索引设计思想

作者: 坨坨的大数据 | 来源:发表于2021-12-10 08:35 被阅读0次

    1

    为什么需要创建二级索引

    HBase对于多条件组合查询这种应用场景是非常不占优势的,甚至可以说就是其短板,一般情况下,我们有两种方式查询Hbase中的数据

    • 通过Rowkey查询数据,Rowkey里面会组合固定查询条件,但是需要把多组合查询的字段都拼接在Rowkey中,这是不可能的。

    • 通过Scan全部扫描符合条件的数据,这样的效率是非常低的

    所以这时候我们就需要用建立二级索引的方法来解决这个问题

    2

    二级索引原理

    图片

    如上图所示,Hbase表中的字段为Rowkey,age,sex,username,phone,目前的需求是需要按照age,sex,username,phone随机组合查询符合条件的数据。

    这时候我们就需要用ES来建立二级索引了,原始数据存在HBase中,索引存在ES中,如下图所示:

    图片

    原理流程

    1. 将原始数据存入HBase

    2. 将需要查询的条件字段及Rowkey存入ES

    3. 客户端发送请求会根据组合查询条件去ES中查找到对应的RowKey

    4. ES返回RowKey给客户端

    5. 客户端根据ES返回的结果(RowKey)查询HBase数据

    6. HBase返回符合条件的数据给客户端

    相关文章

      网友评论

        本文标题:HBase - 二级索引设计思想

        本文链接:https://www.haomeiwen.com/subject/elvnxrtx.html