一种数据读写的控制方法及电子设备技术

技术编号:33043638 阅读:21 留言:0更新日期:2022-04-15 09:25
本发明专利技术适用于数据处理技术领域,提供了一种数据读写的控制方法及电子设备,包括:响应于第一进程发起的对于目标数据的预写锁申请请求,确定所述目标数据的读写参量;若所述预写标识位为第一位值,则向所述第一进程反馈预写同意指令,并将所述预写标识位设置为第二位值,以使所述第一进程基于申请的预写锁执行预写操作;响应于所述第一进程发起的对于所述目标数据的写锁申请请求,向所述目标数据执行数据编辑操作。采用本发明专利技术能够在避免写入操作间相互冲突的同时,还能够减少寻址过程中对于数据的独占时长,大大提高了数据的共享读取能力。力。力。

【技术实现步骤摘要】
一种数据读写的控制方法及电子设备


[0001]本专利技术属于数据处理
,尤其涉及一种数据读写的控制方法及电子设备。

技术介绍

[0002]随着电子技术的不断发展,越来越多的信息通过电子化的形式存储,大大提高了信息编辑以及传递的效率。近年来随着云技术的应用,能够实现多人同时对同一数据的操作,也进一步提高了电子化数据的编辑效率。然而,多进程同时对同一数据进行操作时,虽然提高了数据编辑的效率,但也同时带来了新的问题,即不同进程间的写入操作会存在相互冲突的情况。
[0003]现有的数据读写的控制技术,为了确保编辑数据的准确性以及避免对同一数据的写入冲突,可以配置读写锁,以便对于同一数据而言有且只有一个写入操作,并且在写入操作时阻塞其他对于该数据的读取操作。然而,若某一数据的数据量较大,进行写入操作时需要消耗较长时间完成对编辑元素的寻址动作,而在寻址过程中阻塞读取操作,则大大降低了对于数据的读写效率,并发效率较低。

技术实现思路

[0004]有鉴于此,本专利技术实施例提供了一种数据读写的控制方法及电子设备,以解决现有的数据读写的控制技术,若某一数据的数据量较大,进行写入操作时需要消耗较长时间完成对编辑元素的寻址动作,而在寻址过程中阻塞读取操作,则大大降低了对于数据的读写效率,并发效率较低的问题。
[0005]本专利技术实施例的第一方面提供了一种数据读写的控制方法,包括:
[0006]响应于第一进程发起的对于目标数据的预写锁申请请求,确定所述目标数据的读写参量;所述读写参量包含预写标识位以及写标识位;
[0007]若所述预写标识位为第一位值,则向所述第一进程反馈预写同意指令,并将所述预写标识位设置为第二位值,以使所述第一进程基于申请的预写锁执行预写操作;在所述预写标识位处于所述第二位值时,阻塞应答除所述第一进程外的其他进程发起的预写锁申请请求以及写锁申请请求,应答所述其他进程发起读锁申请请求;
[0008]响应于所述第一进程发起的对于所述目标数据的写锁申请请求,向所述目标数据执行数据编辑操作;所述写锁申请请求是在所述第一进程执行完成所述预写操作后发起的。
[0009]在第一方面的第一种可能的实现方式中,所述响应于所述第一进程发起的对于所述目标数据的写锁申请请求,向所述目标数据执行数据编辑操作,包括:
[0010]响应于所述写锁申请请求,确定所述目标数据的读写参量;所述读写参量包含读标识位;
[0011]若所述读标识位为所述第三位值,则向所述第一进程反馈写入同意指令,并将所述写标识位为第二位值,以使所述第一进程基于申请的写锁执行数据编辑操作;在所述写
标识位处于所述第二位值时,阻塞应答其他进程发起预写锁申请请求、写锁申请请求以及读锁申请请求。
[0012]在第一方面的第一种可能的实现方式中,在所述响应于所述写锁申请请求,确定所述目标数据的读写参量之后,还包括:
[0013]若所述读标识位为除所述第三位值外的其他位值,则基于所述读标识位确定当前执行读取操作的进程个数;
[0014]响应于执行读取操作的其他进程反馈的读锁释放指令,调整所述读标识位的位值,直到调整后的读标识位为所述第三位值时,则执行所述向所述第一进程反馈写入同意指令,并将所述写标识位为第二位值。
[0015]在第一方面的第一种可能的实现方式中,还包括:
[0016]响应于第二进程发起的对于所述目标数据的读锁申请请求,确定所述目标数据的所述读写参量;所述读写参量还包含读标识位;
[0017]若所述写标识位为所述第一位值,则向所述第二进程反馈读同意指令,并增加所述读标识位,以使所述第二进程基于申请的读锁执行读取操作。
[0018]在第一方面的第一种可能的实现方式中,还包括:
[0019]响应于第三进程发起的对于所述目标数据的写锁申请请求,确定所述目标数据的所述读写参量;所述读写参量还包含读标识位;
[0020]若所述预写标识位以及写标识位为第一位值,且所述读标识位为第三位值,则向所述第三进程反馈写同意指令,并将所述写标识位设置为第二位值,以使所述第三进程对所述目标数据执行数据编辑操作。
[0021]在第一方面的第一种可能的实现方式中,在所述响应于第一进程发起的对于目标数据的预写锁申请请求之前,还包括:
[0022]若未确定所述数据编辑操作的元素地址,则通过所述第一进程发起所述预写锁申请请求;
[0023]若已确定所述数据编辑操作的元素地址,则通过所述第一进程发起写锁申请请求。
[0024]在第一方面的第一种可能的实现方式中,所述目标数据为B+树索引;所述数据编辑操作为对所述目标数据内的目标元素的删除操作;
[0025]在所述若所述预写标识位为第一位值,则向所述第一进程反馈预写同意指令,并将所述预写标识位设置为第二位值之后,还包括:
[0026]通过所述第一进程查询所述目标元素在所述B+树索引内位置信息;
[0027]若在所述B+树索引内未查询到所述目标元素的所述位置信息,则通过所述第一进程释放申请的所述预写锁,并将所述预写标识位配置为所述第一位值;
[0028]若在所述B+树索引内查询到所述目标元素的所述位置信息,则通过所述第一进程发起所述写锁申请请求。
[0029]在第一方面的一种可能的实现方式中,所述预写锁申请请求的优先级高于写锁申请请求的优先级;所述写锁申请请求的优先级高于读锁申请请求的优先级。
[0030]本专利技术实施例的第二方面提供了一种数据读写的控制装置,包括:
[0031]预写锁申请单元,用于响应于第一进程发起的对于目标数据的预写锁申请请求,
确定所述目标数据的读写参量;所述读写参量包含预写标识位以及写标识位;
[0032]预写触发单元,用于若所述预写标识位为第一位值,则向所述第一进程反馈预写同意指令,并将所述预写标识位设置为第二位值,以使所述第一进程基于申请的预写锁执行预写操作;在所述预写标识位处于所述第二位值时,阻塞除所述第一进程外的其他进程发起的预写锁申请请求以及写锁申请请求;
[0033]写锁申请单元,用于响应于所述第一进程发起的对于所述目标数据的写锁申请请求,向所述目标数据执行数据编辑操作;所述写锁申请请求是在所述第一进程执行完成所述预写操作后发起的。
[0034]本专利技术实施例的第三方面还提供了一种数据读写的控制装置,用于根据读写参量分配预写锁、写锁以及读锁,其中,读写参量包括:预写标识位、写标识位以及读标识位;
[0035]在所述预写标识位为第一位值时,允许应答线程发起的预写申请请求,以向发起预写申请请求的进程分配预写锁,并在给任一进程分配预写锁后,将所述预写标识位设置为第二位值;
[0036]在所述预写标识位为第二位值时,阻塞应答线程发起的预写申请请求以及写申请请求,允许应答线程启发的读申请请求。
[0037]在第三方面的一种可能的实现方式中,所述数据读写的控制装置还要用于:
[本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据读写的控制方法,其特征在于,包括:响应于第一进程发起的对于目标数据的预写锁申请请求,确定所述目标数据的读写参量;所述读写参量包含预写标识位以及写标识位;若所述预写标识位为第一位值,则向所述第一进程反馈预写同意指令,并将所述预写标识位设置为第二位值,以使所述第一进程基于申请的预写锁执行预写操作;在所述预写标识位处于所述第二位值时,阻塞应答除所述第一进程外的其他进程发起的预写锁申请请求以及写锁申请请求,应答所述其他进程发起读锁申请请求;响应于所述第一进程发起的对于所述目标数据的写锁申请请求,向所述目标数据执行数据编辑操作;所述写锁申请请求是在所述第一进程执行完成所述预写操作后发起的。2.根据权利要求1所述的控制方法,其特征在于,所述响应于所述第一进程发起的对于所述目标数据的写锁申请请求,向所述目标数据执行数据编辑操作,包括:响应于所述写锁申请请求,确定所述目标数据的读写参量;所述读写参量包含读标识位;若所述读标识位为第三位值,则向所述第一进程反馈写入同意指令,并将所述写标识位为第二位值,以使所述第一进程基于申请的写锁执行数据编辑操作;在所述写标识位处于所述第二位值时,阻塞应答其他进程发起预写锁申请请求、写锁申请请求以及读锁申请请求。3.根据权利要求2所述的控制方法,其特征在于,在所述响应于所述写锁申请请求,确定所述目标数据的读写参量之后,还包括:若所述读标识位为除所述第三位值外的其他位值,则基于所述读标识位确定当前执行读取操作的进程个数;响应于执行读取操作的其他进程反馈的读锁释放指令,调整所述读标识位的位值,直到调整后的读标识位为所述第三位值时,则执行所述向所述第一进程反馈写入同意指令,并将所述写标识位为第二位值。4.根据权利要求1所述的控制方法,其特征在于,还包括:响应于第二进程发起的对于所述目标数据的读锁申请请求,确定所述目标数据的所述读写参量;所述读写参量还包含读标识位;若所述写标识位为所述第一位值,则向所述第二进程反馈读同意指令,并增加所述读标识位,以使所述第二进程基于申请的读锁执行读取操作。5.根据权利要求1所述的控制方法,其特征在于,还包括:响应于第三进程发起的对于所述目标数据的写锁申请请求,确定所述目标数据的所述读写参量;所述读写参量还包含读标识位;若所述预写标识位以及写标识位为第一位值,且所述读标识位为第三位...

【专利技术属性】
技术研发人员:王剑
申请(专利权)人:深圳市兆珑科技有限公司
类型:发明
国别省市:

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

1