索引删除方法、装置、设备、介质和计算机程序产品制造方法及图纸

技术编号:35482654 阅读:23 留言:0更新日期:2022-11-05 16:34
本发明专利技术提供一种索引删除方法、装置、设备、介质和计算机程序产品,包括:确定待删除的索引,并在各个事务中获取目标语句;在各个所述目标语句执行完成后,删除所述索引。本发明专利技术中,在事务中的语句执行完成后删除索引,无需等待事务提交完成后再删除索引,减少了删除索引的等待时长。等待时长。等待时长。

【技术实现步骤摘要】
索引删除方法、装置、设备、介质和计算机程序产品


[0001]本专利技术涉及索引
,尤其涉及一种索引删除方法、装置、设备、介质和计算机程序产品。

技术介绍

[0002]索引是关系数据库中单独的、物理的对数据库表中一列或多列的值进行排序的存储结构。
[0003]在发起对索引的删除任务中,需要等到引用索引的事务全部提交后,才可将索引删除。
[0004]在一些业务中,常常存在长事务。在需要删除索引时,需要等待长事务提交之后才可删除索引,但长事务可能是长期存在的事务。例如,长事务为长期存在的只读监控事务,长事务长期存在而不会进行提交,导致索引的删除被无期限的延迟,也即删除索引的等待时长过长。此外,长事务可能是跨多个时间点进行修改的事务,需要等待所有时间点的事务提交之后,才可删除索引,使得删除索引的等待时长过长。

技术实现思路

[0005]本专利技术提供一种索引删除方法、装置、设备、介质和计算机程序产品,用以解决删除索引的等待时长过长的问题。
[0006]一方面,本专利技术提供一种索引删除方法,包括:
[0007]确定待删除的索引,并在各个事务中获取目标语句;
[0008]在各个所述目标语句执行完成后,删除所述索引。
[0009]在一实施例中,还包括:
[0010]将各个所述目标语句的标识添加至集合;
[0011]在所述目标语句执行完成时,在所述集合中移除所述目标语句的标识,并检测所述集合中的各个标识是否全部移除;
[0012]在所述集合中的各个标识全部移除时,确定各个所述目标语句执行完成。
[0013]在一实施例中,所述在各个事务中获取目标语句之前,还包括:
[0014]将所述索引的状态设置为无效;
[0015]广播所述索引的状态,其中,广播的所述索引的状态用于禁止所述事务在广播时间点之后生成的语句引用所述索引,所述广播时间点是所述索引的状态广播的时间点。
[0016]在一实施例中,所述在各个事务中获取目标语句,包括:
[0017]在各个所述事务中,获取生成时间点早于所述广播时间点的语句,作为所述目标语句。
[0018]在一实施例中,所述将所述索引的状态设置为无效之后,还包括:
[0019]确定引用缓存的所述索引的第一计划;
[0020]将所述第一计划的执行状态设置为禁止执行。
[0021]在一实施例中,所述删除所述索引之后,还包括:
[0022]根据所述第一计划以及所述索引生成第二计划,其中,所述第二计划未引用所述索引。
[0023]另一方面,本专利技术还提供一种索引删除装置,包括:
[0024]确定模块,用于确定待删除的索引,并在各个事务中获取目标语句;
[0025]删除模块,用于在各个所述目标语句执行完成后,删除所述索引。
[0026]另一方面,本专利技术还提供一种索引删除设备,包括:存储器和处理器;
[0027]所述存储器存储计算机执行指令;
[0028]所述处理器执行存储器存储的计算机执行指令,使得索引删除设备执行如上所述的索引删除方法。
[0029]另一方面,本专利技术还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如上所述的索引删除方法。
[0030]另一方面,本专利技术还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时,实现如上所述的索引删除方法。
[0031]本专利技术提供的索引删除方法、装置、设备、介质和计算机程序产品,确定待删除的索引,并在各个事务中获取目标语句,并在各个目标语句执行完成后,删除索引。本专利技术中,在事务中语句执行完成后删除索引,无需等待事务提交后再删除索引,减少了删除索引的等待时长。
附图说明
[0032]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
[0033]图1为本专利技术索引删除方法第一实施例的流程示意图;
[0034]图2为本专利技术索引删除方法第二实施例的流程示意图;
[0035]图3为本专利技术索引删除方法第三实施例的流程示意图;
[0036]图4为本专利技术索引删除方法第四实施例的流程示意图;
[0037]图5为本专利技术索引删除装置的功能模块示意图;
[0038]图6为本专利技术索引删除设备的硬件结构示意图。
[0039]通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
[0040]这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
[0041]下面以具体地实施例对本专利技术的技术方案以及本申请的技术方案如何解决上述
技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本专利技术的实施例进行描述。
[0042]参照图1,图1为本专利技术索引删除方法的第一实施例,索引删除方法包括以下步骤:
[0043]步骤S101,确定待删除的索引,并在各个事务中获取目标语句。
[0044]在本实施例中,执行主体为索引删除装置,索引删除装置通信连接数据库,用于删除数据库中待删除的索引。索引删除装置可以是任意具备数据处理能力的设备。为了便于描述,以下采用装置指代索引删除装置。
[0045]数据库中具有索引表,索引表中包括多个索引。可对索引表中的索引进行删除。例如,可向装置发起索引删除任务。索引删除任务携带有待删除的索引。装置解析索引删除任务即可确定待删除的索引。
[0046]数据库中的事务会引用索引。事务例如为只读监控事务、查询事务等。数据库中具有待执行的各个事务,需要等待各个事务中的语句执行完成,且事务提交完毕后,才可将索引进行删除。
[0047]事务包括一个或多个语句,在事务的所有语句全部执行完成后,事务还需要进行提交,在提交完毕后,才可确认事务已结束。对此,装置遍历各个待执行的事务的语句,得到目标语句。目标语句是可能引用索引的语句。
[0048]步骤S102,在各个目标语句执行完成后,删除索引。
[0049]在确定各个语句后,各个事务中的语句开始执行。装置再监测各个目标语句是否执行完成。若是各个目标语句均执行完成,则将索引进行删除。
[0050]示例性技术中,在删除索引时,需要封锁索引所在的索引表。索引表被封锁后,其他业务无法使用索引表中的索引,从而阻塞其他业务本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种索引删除方法,其特征在于,包括:确定待删除的索引,并在各个事务中获取目标语句;在各个所述目标语句执行完成后,删除所述索引。2.根据权利要求1所述的索引删除方法,其特征在于,还包括:将各个所述目标语句的标识添加至集合;在所述目标语句执行完成时,在所述集合中移除所述目标语句的标识,并检测所述集合中的各个标识是否全部移除;在所述集合中的各个标识全部移除时,确定各个所述目标语句执行完成。3.根据权利要求1或2所述的索引删除方法,其特征在于,所述在各个事务中获取目标语句之前,还包括:将所述索引的状态设置为无效;广播所述索引的状态,其中,广播的所述索引的状态用于禁止所述事务在广播时间点之后生成的语句引用所述索引,所述广播时间点是所述索引的状态广播的时间点。4.根据权利要求3所述的索引删除方法,其特征在于,所述在各个事务中获取目标语句,包括:在各个所述事务中,获取生成时间点早于所述广播时间点的语句,作为所述目标语句。5.根据权利要求3所述的索引删除方法,其特征在于,所述将所述索引的状态设置为无效...

【专利技术属性】
技术研发人员:冷建全杨尚
申请(专利权)人:北京人大金仓信息技术股份有限公司
类型:发明
国别省市:

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

1