[发明专利]在线创建索引的实现方法有效

专利信息
申请号: 202110934889.0 申请日: 2021-08-16
公开(公告)号: CN113377786B 公开(公告)日: 2021-11-02
发明(设计)人: 杨永锋 申请(专利权)人: 北京易鲸捷信息技术有限公司
主分类号: G06F16/22 分类号: G06F16/22;G06F16/2458
代理公司: 四川言己律师事务所 51349 代理人: 罗韬
地址: 100089 北京市*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 在线 创建 索引 实现 方法
【说明书】:

发明公开了一种在线创建索引的实现方法,属一种数据库索引表创建方法,该方法首先根据数据库中原表索引的定义,创建与索引相对应的实体索引表;然后生成索引表的元数据信息,将索引表的状态设为“维护”,并同步索引表的状态信息到各个服务进程中,且当前状态的索引表只接受插入、删除和更新的SQL感知等;本发明以索引原表为一张单独表为前提,通过增加索引原表的“维护”状态,以分阶段维护索引的方式来实现索引表在线创建而不影响交易,且通过历史数据同步再删除无效数据的方式,确保索引表与原表的数据一致,使得SQL On HBase数据库在线创建索引的过程中无需锁表,且不依赖于临时表或日志,亦不影响数据库交易正常进行。

技术领域

本发明涉及一种数据库索引表创建方法,更具体的说,本发明主要涉及一种在线创建索引的实现方法。

背景技术

在SQL On HBase数据库上创建索引,为了保证索引和原表的数据一致性,通常是通过锁表的方式来实现,但是这样会影响实时交易。传统的关系型数据库为了做到不锁表,降低对实时交易的影响,通常会通过创建临时表、日志回放或者两次读原表的方式来创建索引。但是SQL On HBase数据库上的索引和传统数据库不同,是以表的形式存在的,所以传统数据库上的在线创建索引的方法在SQL On HBase数据库上可以参考,但不一定是最好的方式。传统数据库的创建在线索引的三种方式都能不同程度的降低对实时交易的影响,但是也存在一些缺陷。其中一种是基于临时表的在线创建索引的方案需要将原表的数据导出到临时表中,如果表比较大,对空间的要求比较高。另一种是基于日志回放的在线创建索引的方案在将表里的记录插入到索引的过程中,需要将更新的记录记入日志当中,在表里的记录扫描完毕,会重放日志当中的记录修改,并记入索引。在重放日志的最后阶段还是需要锁表,虽然减少了锁表的时间,但是还是会对交易有一定影响。还有一种是基于两次读原表的方式在线创建索引的方案,第一次扫描表前先开启事务1,拿到当前shanpshot1,扫描前还需要等待所有修改过该表的事务结束,扫描该表,创建索引,不阻塞读写,结束事务1。第二次扫描该表前需要开启事务2,拿到当前的snapshot2,再次扫描该表前还需要等待所有修改过该表的事务结束。最后更新索引结束后,还需要等待事务2之前开启的持有snapshot的事务结束。创建索引的过程需要两次扫描,三次等待。每一次扫描的过程中出现问题都会对DML有影响。因此有必要针对SQL On HBase数据库的表创建索引会影响实时交易的问题进行研究和改进。

发明内容

本发明的目的之一在于解决上述不足,提供一种在线创建索引的实现方法,以期望解决现有技术中同类数据库在线索引创建方法中的锁表,或者不锁表采用临时表、日志回放、两次读取原表等方式仍然对实时交易产生影响,不利于SQL On HBase数据库在电子商务平台中的使用等技术问题。

为解决上述的技术问题,本发明采用以下技术方案。

本发明所提供的一种在线创建索引的实现方法,方法包括如下步骤。

步骤A、根据数据库中原表索引的定义,创建与索引相对应的实体索引表。

步骤B、生成索引表的元数据信息,将索引表的状态设为“维护”,并同步索引表的状态信息到各个服务进程中,且当前状态的索引表只接受插入、删除和更新的SQL感知。

步骤C、读取扫描原表中的记录数据并同步至索引表中,且在同步过程中,如索引表中没有此前插入原表的数据,则将数据插入索引表中,反之则不做进一步处理;继续读取扫描原表,直至同步完成。

步骤D、读取扫描同步后的索引表中的数据,如索引表存在原表中不存在的数据,则作为无效数据删除,反之则继续读取扫描同步后的索引表中的数据,直至无效数据删除完成,索引表创建完成。

作为优选,进一步的技术方案是:所述步骤E、将索引表的状态更新为“有效”,并同步当前索引表的状态信息到各个服务进程中,此时查询的SQL可使用该索引。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京易鲸捷信息技术有限公司,未经北京易鲸捷信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202110934889.0/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top