前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >hbase的二级索引解决方案

hbase的二级索引解决方案

作者头像
Albert陈凯
发布2018-04-04 14:53:48
1.3K0
发布2018-04-04 14:53:48
举报
文章被收录于专栏:Albert陈凯

HBase的一级索引就是rowkey,我们只能通过rowkey进行检索。如果我们相对hbase里面列族的列列进行一些组合查询,就需要采用HBase的二级索引方案来进行多条件的查询。 常见的二级索引方案有以下几种: 1.MapReduce方案 2.ITHBASE方案 3.IHBASE方案 4.Coprocessor方案 5.Solr+hbase方案 MapReduce方案IndexBuilder:利用MR的方式构建Index 优点:并发批量构建Index 缺点:不能实时构建Index

ITHBASE方案 优点:ITHBase(Indexed Transactional HBase)是HBase的一个事物型的带索引的扩展。 缺点:需要重构hbase,几年没有更新。 http://github.com/hbase-trx/hbase-transactional-tableindexed IHBASE方案 优点:IHBase(Indexed HBase)是HBase的一个扩展,用干支持更快的扫描。 缺点:需要重构hbase。 原理:在Memstore满了以后刷磁盘时,IHBase会进行拦截请求,并为这个memstore的数据构建索引,索引另一个CF的方式存储在表内。scan的时候,IHBase会结合索引列中的标记,来加速scan。 http://github.com/ykulbak/ihbase

Coprocessor方案 HIndex–来自华为的HBase二级索引 http://github.com/Huawei-Hadoop/hindex

The solution is 100% Java, compatible with Apache HBase 0.94.8, and is open sourced under ASL. Following capabilities are supported currently. 1.multiple indexes on table, 2.multi column index, 3.index based on part of a column value, 4.equals and range condition scans using index, and 5.bulk loading data to indexed table (Indexing done with bulk load).

Solr+hbase方案 Solr是一个独立的企业级搜索应用服务器,它对并提供类似干Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。 Solr是一个高性能,采用Java5开发,基干Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能节理界面,是一款非常优秀的全文搜索引擎。 HBase无可置疑拥有其优势,但其本身只对rowkey支持毫秒级的快速检索,对于多字段的组合查询却无能为力。 基于Solr的HBase多条件查询原理很简单,将HBase表中涉及条件过滤的字段和rowkey在Solr中建立索引,通过Solr的多条件查询快速获得符合过滤条件的rowkey值,拿到这些rowkey之后在HBASE中通过指定rowkey进行查询。

原文地址:http://www.aboutyun.com/thread-14201-1-1.html

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017.05.09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 HBase
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档