一种构建Hbase二级索引表方法技术

技术编号:24289744 阅读:29 留言:0更新日期:2020-05-26 20:05
本发明专利技术公开了一种构建Hbase二级索引表方法,涉及数据库领域。Hbase本身只提供基于行键和全表扫描的查询,进行非行键的查询时需要对全表扫描,这样的查询效率低下。本发明专利技术步骤包括:hbase表上给原表建立索引表;对于原表的每条记录,在索引表上生成相应的索引记录,其索引记录的行键包括分区键、索引值、连接符和原表主键,所述的分区键为索引记录所在region的起始键字段,分区键作为索引表主键,分区键采取随机散列方式再结合索引表预分区;对分区值进行预定义;建立索引表时预先确定索引分区值;建立索引表时对索引表按照索引分区值进行预分区。可有效提升并行性能,提高查询效率。

A method of constructing HBase secondary index table

【技术实现步骤摘要】
一种构建Hbase二级索引表方法
本专利技术涉及数据库领域,尤其涉及一种构建Hbase二级索引表方法。
技术介绍
目前,业界对于Hbase的二级索引已提出了多种方案。索引表在创建时只有一个分区时,会导致大量的访问集中单个region上,另外在写比较频率的场景下,随着数据增长越来越快,split次数也会增多,而split是比较耗时耗资源的。若预分区一开始就预建好了,但由于索引表主键的前缀往往是连续相同且顺序增大,这样还是会导致大量的读,写或其他操作访问集群中的一个或少数个节点,会造成某个热点region所在的单个机器超出自身承受能力,引起性能下降甚至region不可用。
技术实现思路
本专利技术要解决的技术问题和提出的技术任务是对现有技术方案进行完善与改进,提供一种构建Hbase二级索引表方法,以提升操作访问效率为目的。为此,本专利技术采取以下技术方案。一种构建Hbase二级索引表方法,包括以下步骤:1)hbase表上给原表建立索引表;2)对于原表的每条记录,在索引表上生成相应的索引记录,其索引记录的行本文档来自技高网...

【技术保护点】
1.一种构建Hbase二级索引表方法,其特征在于包括以下步骤:/n1)hbase表上给原表建立索引表;/n2)对于原表的每条记录,在索引表上生成相应的索引记录,其索引记录的行键包括分区键、索引值、连接符和原表主键,所述的分区键为索引记录所在region的起始键字段,分区键作为索引表主键;/n3)对分区值进行预定义;/n4)建立索引表时预先确定索引分区值;/n5)建立索引表时对索引表按照索引分区值进行预分区。/n

【技术特征摘要】
1.一种构建Hbase二级索引表方法,其特征在于包括以下步骤:
1)hbase表上给原表建立索引表;
2)对于原表的每条记录,在索引表上生成相应的索引记录,其索引记录的行键包括分区键、索引值、连接符和原表主键,所述的分区键为索引记录所在region的起始键字段,分区键作为索引表主键;
3)对分区值进行预定义;
4)建立索引表时预先确定索引分区值;
5)建立索引表时对索引表按照索引分区值进行预分区。


2.根据权利要求1所述的一种构建Hbase二级索引表方法,其特征在于:步骤2)中,分区键采取随机散列方式的一种分布,再结合索引表预分区。


3.根据权利要求1所述的一种构建Hbase二级索引表方法,其特征在于:步骤2)中,若原表有分区键,可以获取原表的分区键作为起始键,这样原表记录和索引记录具有相同主键前缀,则会分配到同一个regionserver上。


4.根据权利要求1所述的一种构建Hbase二级索引表方法,其...

【专利技术属性】
技术研发人员:胡峻朱慧君
申请(专利权)人:浙江华云信息科技有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1