银行数据库行锁的处理方法及装置制造方法及图纸

技术编号:36708287 阅读:13 留言:0更新日期:2023-03-01 09:32
本发明专利技术公开了一种银行数据库行锁的处理方法及装置,涉及人工智能,该方法包括:检测银行数据库的行锁性能参数;并匹配得到性能参数预警阈值;针对每一行锁性能参数,在该行锁性能参数超过匹配的性能参数预警阈值时,确定该银行数据库中出现事务请求的行锁等待事件,并将该锁性能参数确定为目标行锁性能参数;根据该目标行锁性能参数,检测该行锁等待事件涉及的多个银行事务,并将所述多个银行事务加入到等待事件堆栈中;依次处理所述等待事件堆栈中的每一银行事务;发出行锁等待事件处理完毕的通知信息。本发明专利技术用以实现对行锁等待事件的预警,减少因行锁等待事件造成的损失,提升金融机构处理行锁等待事件的效率。机构处理行锁等待事件的效率。机构处理行锁等待事件的效率。

【技术实现步骤摘要】
银行数据库行锁的处理方法及装置


[0001]本专利技术涉及人工智能
,尤其涉及银行数据库行锁的处理方法及装置。

技术介绍

[0002]本部分旨在为权利要求书中陈述的本专利技术实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
[0003]在大型金融机构的信息化建设与管理中,随着业务快速增长,各种金融业务系统频繁遭遇业务数据库的锁等待事件,其直接后果是造成金融机构业务失效或业务缓慢。目前绝大多数金融机构对于锁等待这类发生在业务源端的应用类问题,缺少高效的智能化应急处理机制,这使得应对锁等待时间的紧迫性和必要性尤为突出。
[0004]如下对行锁等待的典型场景进行举例说明:如事务A要Update表当中的某些行记录,事务A会在这些行记录之上放置行级排他锁,这个锁允许其他事务对这些行记录进行非一致读,但不允许任何其他事务对这些行进行DML修改操作,直到事务A结束释放该独占锁。此时如果有事务试图去修改这些被锁定的行,这些事务就会被迫等待事务A结束,才能执行自己的操作。
[0005]目前常见的处理方案有两种:一是对于必须在业务时段执行的DML语句,在表上增加索引或建立合适的数据分区以解决锁定时间过长的问题;二是对于长事务造成的锁等待时间较长,在业务逻辑允许的情况下,在程序产生锁的语句后增加commit操作,以释放锁。
[0006]但上述两种方式,均是在行锁等待问题根源被找到的情况下,进行事后处理的方案。但是现在困扰金融机构的是:如何实现对行锁等待事件的预警,避免因行锁等待事件造成事务处理延误而导致的业务受损风险,以及如何在损失发生前,规避风险或者减少风险损失。而目前并不存在一种可对行锁等待事件进行预警的方案。

技术实现思路

[0007]本专利技术实施例提供一种银行数据库行锁的处理方法,用以实现对行锁等待事件的预警,减少因行锁等待事件造成的损失,提升金融机构处理行锁等待事件的效率,该方法包括:
[0008]检测银行数据库的行锁性能参数;所述行锁性能参数用于描述数据库参数中与行锁相关的性能参数;将每一行锁性能参数,与预设置的行锁性能预警关联关系进行匹配,得到与每一行锁性能参数对应的性能参数预警阈值;所述行锁性能预警关联关系用于表征不同行锁性能参数和不同性能参数预警阈值之间的关联关系;
[0009]针对每一行锁性能参数,在该行锁性能参数超过匹配的性能参数预警阈值时,确定该银行数据库中出现事务请求的行锁等待事件,并将该锁性能参数确定为目标行锁性能参数;
[0010]根据该目标行锁性能参数,检测该行锁等待事件涉及的多个银行事务,并将所述多个银行事务加入到等待事件堆栈中;根据预设置的银行事务与事务处理方式的对应关
系,依次处理所述等待事件堆栈中的每一银行事务;
[0011]在所述等待事件堆栈中的银行事务处理结束后,发出行锁等待事件处理完毕的通知信息。
[0012]本专利技术实施例还提供一种银行数据库行锁的处理装置,用以实现对行锁等待事件的预警,减少因行锁等待事件造成的损失,提升金融机构处理行锁等待事件的效率,该装置包括:
[0013]行锁性能参数检测模块,用于检测银行数据库的行锁性能参数;所述行锁性能参数用于描述数据库参数中与行锁相关的性能参数;将每一行锁性能参数,与预设置的行锁性能预警关联关系进行匹配,得到与每一行锁性能参数对应的性能参数预警阈值;所述行锁性能预警关联关系用于表征不同行锁性能参数和不同性能参数预警阈值之间的关联关系;
[0014]行锁等待事件确定模块,用于针对每一行锁性能参数,在该行锁性能参数超过匹配的性能参数预警阈值时,确定该银行数据库中出现事务请求的行锁等待事件,并将该锁性能参数确定为目标行锁性能参数;
[0015]银行事务检测处理模块,用于根据该目标行锁性能参数,检测该行锁等待事件涉及的多个银行事务,并将所述多个银行事务加入到等待事件堆栈中;根据预设置的银行事务与事务处理方式的对应关系,依次处理所述等待事件堆栈中的每一银行事务;
[0016]通知信息发送模块,用于在所述等待事件堆栈中的银行事务处理结束后,发出行锁等待事件处理完毕的通知信息。
[0017]本专利技术实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述银行数据库行锁的处理方法。
[0018]本专利技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述银行数据库行锁的处理方法。
[0019]本专利技术实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述银行数据库行锁的处理方法。
[0020]本专利技术实施例中,检测银行数据库的行锁性能参数;所述行锁性能参数用于描述数据库参数中与行锁相关的性能参数;将每一行锁性能参数,与预设置的行锁性能预警关联关系进行匹配,得到与每一行锁性能参数对应的性能参数预警阈值;所述行锁性能预警关联关系用于表征不同行锁性能参数和不同性能参数预警阈值之间的关联关系;针对每一行锁性能参数,在该行锁性能参数超过匹配的性能参数预警阈值时,确定该银行数据库中出现事务请求的行锁等待事件,并将该锁性能参数确定为目标行锁性能参数;根据该目标行锁性能参数,检测该行锁等待事件涉及的多个银行事务,并将所述多个银行事务加入到等待事件堆栈中;根据预设置的银行事务与事务处理方式的对应关系,依次处理所述等待事件堆栈中的每一银行事务;在所述等待事件堆栈中的银行事务处理结束后,发出行锁等待事件处理完毕的通知信息,从而可根据检测银行数据库的锁性能参数,确定银行数据库中是否出现行锁等待事件,并以等待事件堆栈对出现的行锁等待事件进行针对性处理,即可在出现行锁等待事件的初始阶段,实现对行锁的自动处理,可有效消除产生严重锁等待事件的各种潜在因素,能更早发现行锁等待事件带来的业务受损风险,从而做到在损失发
生前,规避风险或者减少风险损失,解决了现有技术下仅能对行锁等待事件进行事后处理而造成事务处理延误的问题,可实现对行锁等待事件的预警,减少了因行锁等待事件造成的损失,也提升了金融机构处理行锁等待事件的效率。
附图说明
[0021]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
[0022]图1为本专利技术实施例中一种银行数据库行锁的处理方法的流程示意图;
[0023]图2为本专利技术实施例中一种银行数据库行锁的处理方法的具体示例图;
[0024]图3为本专利技术实施例中一种银行数据库行锁的处理方法的具体示例图;
[0025]图4为本专利技术实施例中一种银行数据库行锁的处理装置的结构示意图;
[0026]图5为本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种银行数据库行锁的处理方法,其特征在于,包括:检测银行数据库的行锁性能参数;所述行锁性能参数用于描述数据库参数中与行锁相关的性能参数;将每一行锁性能参数,与预设置的行锁性能预警关联关系进行匹配,得到与每一行锁性能参数对应的性能参数预警阈值;所述行锁性能预警关联关系用于表征不同行锁性能参数和不同性能参数预警阈值之间的关联关系;针对每一行锁性能参数,在该行锁性能参数超过匹配的性能参数预警阈值时,确定该银行数据库中出现事务请求的行锁等待事件,并将该锁性能参数确定为目标行锁性能参数;根据该目标行锁性能参数,检测该行锁等待事件涉及的多个银行事务,并将所述多个银行事务加入到等待事件堆栈中;根据预设置的银行事务与事务处理方式的对应关系,依次处理所述等待事件堆栈中的每一银行事务;在所述等待事件堆栈中的银行事务处理结束后,发出行锁等待事件处理完毕的通知信息。2.如权利要求1所述的方法,其特征在于,所述行锁性能参数包括:与行锁等待相关的数据库性能计数器的数值;所述数据库性能计数器包括:application类型的等待事务的计数器;在该行锁性能参数超过匹配的性能参数预警阈值时,确定该银行数据库中出现事务请求的行锁等待事件,包括:在所述数值超过匹配的性能参数预警阈值时,确定该银行数据库中出现事务请求的行锁等待事件。3.如权利要求1所述的方法,其特征在于,根据该目标行锁性能参数,检测该行锁等待事件涉及的多个银行事务,包括:根据该目标行锁性能参数,检测该行锁等待事件涉及的多个银行事务中的当前阻塞事务;基于递归算法,根据所述当前阻塞事务,逐级递归确定因所述当前阻塞事务而等待处理的事务。4.如权利要求3所述的方法,其特征在于,还包括:以桑基图,对所述当前阻塞事务、和因所述当前阻塞事务而等待处理的事务进行展示。5.如权利要求1所述的方法,其特征在于,根据预设置的银行事务与事务处理方式的对应关系,依次处理所述等待事件堆栈中的每一银行事务,包括:依据所述多个银行事务放入等待事件堆栈的顺序,根据预设置的银行事务与事务处理方式的对应关系,依次处理所述等待事件堆栈中的每一银行事务。6.如权利要求1所述的方法,其特征在于,还包括:在确定该银行数据库中出现事务请求的行锁等待事件时,发出银行数据库中出现行锁等待事件的告警信息。7.一种银行数据库行锁的处理装置,其特征在于,包括:行锁性能参数检测模块,用于检测银行数据库的行锁性能参数;所述行锁性能参数用于描述数据库参数中与行锁相关的性能参数;将每一行锁性能参数,与预设置的行锁性能预警关联关系进...

【专利技术属性】
技术研发人员:付中宇
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:

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

1