一种数据的修改方法、装置、存储介质及电子设备制造方法及图纸

技术编号:38315649 阅读:12 留言:0更新日期:2023-07-29 08:57
一种数据的修改方法、装置、存储介质及电子设备,涉及大数据技术领域、计算机技术领域或金融领域。其中,该方法包括:当目标数据的累计修改值处于安全锁定区间时,同一时刻仅允许一个线程修改目标数据;当目标数据的累计修改值处于无锁定区间,且累计修改值继续累计第一修改值后仍处于无锁定区间时,允许多个线程并发修改目标数据;当目标数据的累计修改值处于无锁定区间,且累计修改值继续累计第一修改值后处于安全锁定区间时,同一时刻仅允许一个线程修改目标数据。利用本申请实施例提供的方法,能够在提升数据修改效率的同时避免出现线程的卡顿或者崩溃情况,因此在保障数据修改过程的安全性的同时,还提升了用户体验。还提升了用户体验。还提升了用户体验。

【技术实现步骤摘要】
一种数据的修改方法、装置、存储介质及电子设备


[0001]本申请涉及计算机
,尤其涉及一种数据的修改方法、装置、存储介质及电子设备。

技术介绍

[0002]随着技术的进步,在对于服务器或者计算机上的关键数据进行修改时,往往会出现多个线程同时需要使用或者修改该关键数据的情况。但是多线程访问可能会导致对关键数据的修改超出关键数据的阈值。例如,每个关键数据的数值为a,最低阈值为0。每次修改关键数据后,关键数据至少减少0.1a,则当同时有11个线程修改关键数据时,关键数据的取值已经小于最低阈值,则会导致各线程出现异常。
[0003]为了解决以上问题,现有的方案为在访问和修改关键数据时,会将关键数据加锁,一次只能允许一个线程进行修改,这种方法虽然比较安全,但是在效率上会比较低,因为其余的线程在无法抢占资源时,会处于等待状态,甚至可能导致卡顿或者崩溃。

技术实现思路

[0004]为了解决现有技术存在的上述技术问题,本申请提供了一种数据的修改方法、装置、存储介质及电子设备,能够在提升数据修改效率的同时避免出现线程的卡顿或者崩溃情况,因此在保障数据修改过程的安全性的同时,还提升了用户体验。
[0005]第一方面,本申请提供了一种数据的修改方法,该方法包括:当目标数据的累计修改值处于安全锁定区间时,同一时刻仅允许一个线程修改所述目标数据;当所述目标数据的所述累计修改值处于无锁定区间,且所述累计修改值继续累计第一修改值后仍处于所述无锁定区间时,允许多个线程并发修改所述目标数据;当所述目标数据的累计修改值处于无锁定区间,且所述累计修改值继续累计所述第一修改值后处于所述安全锁定区间时,同一时刻仅允许一个线程修改所述目标数据。
[0006]利用本申请提供的数据修改的方法,将对目标数据的累计修改值划分为安全锁定区间,和无锁定区间。其中,安全锁定区间相较于无锁定区间,更加靠近目标数据的可修改阈值。当累计修改值处于安全锁定区间时,目标数据会被锁定,同一时刻仅允许一个线程修改目标数据,其余无法抢占资源的线程处于等待状态。当累计修改值处于无锁定区间,且累计修改值继续累计第一修改值后仍处于无锁定区间时,允许多个线程并发修改所述目标数据,此时能够快速并行实现对于目标数据的修改。当目标数据的累计修改值处于无锁定区间,且累计修改值继续累计第一修改值后处于安全锁定区间时,表明此时的累计修改值已经接近于安全锁定区间,此时按照累计修改值处于安全锁定区间的方式处理,也即同一时刻仅允许一个线程修改目标数据。该方案能够在提升数据修改效率的同时避免出现线程的卡顿或者崩溃情况,因此在保障数据修改过程的安全性的同时,还提升了用户体验。
[0007]在一种可能的实现方式中,方法还包括:
[0008]在每个进程修改所述目标数据之前,确定当前的所述第一修改值,以及根据所述
目标数据的数据范围确定所述无锁定区间和所述安全锁定区间,所述第一修改值按照预设间隔更新。
[0009]在一种可能的实现方式中,所述确定当前的所述第一修改值,具体包括:根据用户在当前时间段内对所述目标数据的历史修改信息确定第一系数;根据所述用户在当前时间段内对所述目标数据所属的数据类的历史修改信息确定第二系数;根据所述目标数据在当前时间段内的历史修改信息确定第三系数;根据当前所述目标信息的修改渠道确定第四系数;根据发起修改所述目标数据的当前时刻段确定第五系数;根据所述第一系数、第二系数、第三系数、第四系数、第五系数以及所述第一修改值的基准值,确定当前的所述第一修改值。
[0010]在一种可能的实现方式中,所述根据所述目标信息的修改渠道确定第四系数,具体包括:将修改所述目标信息的并发性最高的修改渠道的第四系数设定为第四系数的基准值;根据其余各所述修改渠道的并发性,确定其余各所述修改渠道分别对应的第四系数,各所述修改渠道分别对应的第四系数与各所述修改渠道的并发性正相关。
[0011]在一种可能的实现方式中,所述根据发起修改所述目标数据的当前时间确定第五系数,具体包括:确定允许修改所述目标数据的起始时刻和终止时刻之间的第一时间长度;确定所述起始时刻与所述当前时刻之间的第二时间长度,并确定所述当前时刻与所述终止时刻之间的第三时间长度;确定所述第一时间长度和所述第二时间长度之间的第一比值,确定所述第三时间长度和所述第一时间长度之间的第二比值;根据所述第一比值与所述第二比值的乘积确定所述第五系数,所述第五系数与所述乘积的大小负相关。
[0012]在一种可能的实现方式中,所述当目标数据的累计修改值处于安全锁定区间时,同一时刻仅允许一个线程修改所述目标数据,具体包括:当所述累计修改值大于或者等于第一数值,且小于或者等于第二阈值时,确定所述累计修改值处于所述安全锁定区间,同一时刻仅允许一个线程修改所述目标数据;所述当所述目标数据的所述累计修改值处于无锁定区间,且所述累计修改值继续累计第一修改值后仍处于所述无锁定区间时,允许多个线程并发修改所述目标数据,具体包括:当所述累计修改值大于或者等于所述第一阈值,且小于所述第一数值时,确定所述目标数据处于所述无锁定区间,并且当所述累计修改值增加所述第一修改值后仍处于所述无锁定区间时,允许多个线程并发修改所述目标数据;所述当所述目标数据的累计修改值处于无锁定区间,且所述累计修改值继续累计所述第一修改值后处于所述安全锁定区间时,同一时刻仅允许一个线程修改所述目标数据,具体包括:当所述累计修改值大于或者等于所述第一阈值,且小于所述第一数值时,确定所述目标数据处于所述无锁定区间,并且当所述累计修改值增加所述第一修改值后处于所述安全锁定区间时,同一时刻仅允许一个线程修改所述目标数据。
[0013]在一种可能的实现方式中,所述方法还包括:从数据修改日志中获取所述目标数据的修改记录和所述目标数据的当前数据值;根据所述修改记录和前一次复核所得的理论数据值,确定本次复核所得的所述目标数据的理论数据值;当本次复核所得的所述目标数据的理论数据值和所述当前数据值一致时,确定本次复核通过;否则,根据本次复核所得的所述目标数据的理论数据值更新所述目标数据的当前数据值,并将对所述目标数据的当前数据值的更新记录在所述数据修改日志中。
[0014]第二方面,本申请提供了一种数据的修改装置,该装置包括:第一处理模块、第二
处理模块和第三处理模块。所述第一处理模块,用于当目标数据的累计修改值处于安全锁定区间时,同一时刻仅允许一个线程修改所述目标数据;所述第二处理模块,用于当所述目标数据的所述累计修改值处于无锁定区间,且所述累计修改值继续累计第一修改值后仍处于所述无锁定区间时,允许多个线程并发修改所述目标数据;所述第三处理模块,用于当所述目标数据的累计修改值处于无锁定区间,且所述累计修改值继续累计所述第一修改值后处于所述安全锁定区间时,同一时刻仅允许一个线程修改所述目标数据。
[0015]在一种可能的实现方式中,所述装置还包括确定模块。所述确定模块,用于在每个进程修改所述目标数据之前,确定当前的所述第一修改值,以及根据所述目标数据的数本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据的修改方法,其特征在于,用于修改目标数据,所述方法包括:当目标数据的累计修改值处于安全锁定区间时,同一时刻仅允许一个线程修改所述目标数据;当所述目标数据的所述累计修改值处于无锁定区间,且所述累计修改值继续累计第一修改值后仍处于所述无锁定区间时,允许多个线程并发修改所述目标数据;当所述目标数据的累计修改值处于无锁定区间,且所述累计修改值继续累计所述第一修改值后处于所述安全锁定区间时,同一时刻仅允许一个线程修改所述目标数据。2.根据权利要求1所述的数据的修改方法,其特征在于,所述方法还包括:在每个进程修改所述目标数据之前,确定当前的所述第一修改值,以及根据所述目标数据的数据范围确定所述无锁定区间和所述安全锁定区间,所述第一修改值按照预设间隔更新。3.根据权利要求2所述的数据的修改方法,其特征在于,所述确定当前的所述第一修改值,具体包括:根据用户在当前时间段内对所述目标数据的历史修改信息确定第一系数;根据所述用户在当前时间段内对所述目标数据所属的数据类的历史修改信息确定第二系数;根据所述目标数据在当前时间段内的历史修改信息确定第三系数;根据当前所述目标信息的修改渠道确定第四系数;根据发起修改所述目标数据的当前时刻段确定第五系数;根据所述第一系数、第二系数、第三系数、第四系数、第五系数以及所述第一修改值的基准值,确定当前的所述第一修改值。4.根据权利要求3所述的数据的修改方法,其特征在于,所述根据当前所述目标信息的修改渠道确定第四系数,具体包括:将修改所述目标信息的并发性最高的修改渠道的第四系数设定为第四系数的基准值;根据其余各所述修改渠道的并发性,确定其余各所述修改渠道分别对应的第四系数,各所述修改渠道分别对应的第四系数与各所述修改渠道的并发性正相关。5.根据权利要求3所述的数据的修改方法,其特征在于,所述根据发起修改所述目标数据的当前时间确定第五系数,具体包括:确定允许修改所述目标数据的起始时刻和终止时刻之间的第一时间长度;确定所述起始时刻与所述当前时刻之间的第二时间长度,并确定所述当前时刻与所述终止时刻之间的第三时间长度;确定所述第一时间长度和所述第二时间长度之间的第一比值,确定所述第三时间长度和所述第一时间长度之间的第二比值;根据所述第一比值与所述第二比值的乘积确定所述第五系数,所述第五系数与所述乘积的大小负相关。6.根据权利要求1

5中任一项所述的数据的修改方法,其特征在于,所述当目标数据的累计修改值处于安全锁定区间时,同一时刻仅允许一个线程修改所述目标数据,具体包括:当所述累计修改值大于...

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

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

1