Hbase 学习(八) 使用MapReduce&华为二级索引(原理)

  • 时间:
  • 浏览:0
  • 来源:彩神快三手机版

下面来对其方案做俩个分析。

这一 架构在Client Ext中设定索引细节,在Balancer中派发信息,在Coprocessor中管理二级索引数据。

本文对华为hbase使用coprocessor进行二级索引的方案的创建表,插入数据,查询数据的步骤进行了俩个粗略分析,以窥其全貌。在使用的前一天,都须要作为俩个参考。

在创建表的前一天,在同俩个region server上创建索引表,且一一对应。

为了使主表和索引表在同俩个RS上,要禁用索引表的自动和手动split,可不都里能了由主表split的前一天触发,当主表split的前一天,对索引表按其对应数据进行划分,同去,对索引表的第俩个daughter split的row key的前面每种修改为对应的主键的row key。

进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。

总结:

查询性能极大提升,插入性能下降10%左右

这里就不说哪几个了,很简单,一看就懂。

在主表中插入某条数据后,用Coprocessor将索引列写到索引表中去,写道索引表中的数据的主键为:region开始英语 了key+索引名+索引列值+主表row key。没有做,是为了让其在同俩个分布规则下,索引表会跟主表在通过region server上,在查询的前一天就都须要少一次rpc。

另外网上还有另外俩个例子,也是说明这一 的,这一 例子更为全面这一,包括了Mapper和Reducer。

版权声明:本文内容由互联网用户自发贡献,版权归作者所有,本社区不拥有所有权,就是 承担相关法律责任。有日后您发现本社区蕴含涉嫌抄袭的内容,欢迎发送邮件至:

在hbase的demo上边有个IndexBuilder的例子,它就是 使用了MapReduce来操作hbase的,例子也比较简单,有日后只包括了Mapper。

俩个查询到来的前一天,通过coprocessor钩子,先从索引表中查询范围row,有日后再从主表中相关row中扫描获得最终数据。

经过另一方认真阅读了一下代码,发现这一 源码仅供参考,让你集成到原有的集群当中是特别儿难度的,它对hbase的源码进行不少的修改。

这一 是华为的二级索引方案,有日后开放源代码了,下面是网上的一篇讲解原理的帖子,发出来和我们共享一下。