[发明专利]一种数据库修改方法、装置、设备及介质在审
申请号: | 202210347585.9 | 申请日: | 2022-04-01 |
公开(公告)号: | CN114676115A | 公开(公告)日: | 2022-06-28 |
发明(设计)人: | 韩朱忠;王蒙蒙 | 申请(专利权)人: | 上海达梦数据库有限公司 |
主分类号: | G06F16/21 | 分类号: | G06F16/21;G06F16/22;G06F16/23;G06F16/245 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 高艳红 |
地址: | 201203 上海*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据库 修改 方法 装置 设备 介质 | ||
本发明实施例公开了一种数据库修改方法、装置、设备及介质。该方法包括:在释放目标事务的事务锁对象以及唤醒等待事务之时,确定冲突事务登记表内所述等待事务目标记录的封锁信息的登记情况;根据所述登记情况确定所述等待事务的执行策略;按照所述执行策略控制所述等待事务修改数据。本发明实施例,通过在释放目标事务的事务锁对象以及唤醒等待事务之时,确定冲突事务登记表内等待事务目标记录的封锁信息的登记情况,并根据登记情况确定等待事务的执行策略,避免了冲突事务被同时唤醒后,执行无效的数据查询及数据修改,提升了系统并发执行的效率。
技术领域
本发明涉及计算机技术领域,尤其涉及一种数据库修改方法、装置、设备及介质。
背景技术
数据库系统允许多个用户并发访问和修改数据,不同用户的并发操作最终体现为不同事务的并发执行,有可能会出现多个事务同时访问或修改同一行数据的情况,现有技术中,为了保证数据的正确性和一致性,数据库系统必须要进行并发控制,其中最常用的方式就是封锁,在修改数据之前,先对数据库对象进行X封锁,在此期间其他事务的访问和修改动作都会被阻塞住,在数据修改完成后再释放X锁,以此来保证并发情况下数据的正确性和一致性。
现有技术中,为了降低数据库行锁的资源消耗和维护代价,其中一种行锁优化方式是将事务标识号(Transaction Identifier,事务标识号)作为封锁目标进行封锁,以此来替代传统的行级封锁。事务启动时首先以当前事务号为封锁目标,采用X封锁模式封锁当前事务号TID,另外在执行插入、删除、更新操作后,只要将当前事务号写入记录的TID字段中,就相当于对这一行记录也进行了X封锁,减少了行锁资源的消耗。在事务结束之前,另一个事务要修改相同记录时,先从记录中读出TID值,根据多版本并发控制技术的可见性规则判断记录对其是否可见,由于事务1还未提交,因此这条记录对事务2是不可见的,事务2对记录中当前的TID值进行X封锁时会被阻塞住,直到事务1结束时将其唤醒,从而达到多个事务并发控制的目的,这种封锁策略在没有产生记录更新冲突时不需要额外的封锁,但是,在现有技术中的很多场景下,还是会存在多个更新冲突的事务仍然可能被同时唤醒的情况,会造成不必要的并发冲突,增加了数据库行锁的资源消耗以及维护代价,使得系统执行的效率低下。
公开内容
有鉴于此,本发明提供一种数据库修改方法、装置、设备及介质,能够避免冲突事务被同时唤醒后,执行无效的数据查询及修改,提升系统并发执行的效率。
根据本发明的一方面,本发明实施例提供了一种数据库修改方法,该方法包括:
在释放目标事务的事务锁对象以及唤醒等待事务之时,确定冲突事务登记表内等待事务目标记录的封锁信息的登记情况;
根据所述登记情况确定所述等待事务的执行策略;
按照所述执行策略控制所述等待事务修改数据。
根据本发明的另一方面,本发明实施例还提供了一种数据库修改方法装置,该装置包括:
登记确定模块,用于在释放目标事务的事务锁对象以及唤醒等待事务之时,确定冲突事务登记表内等待事务目标记录的封锁信息的登记情况;
策略确定模块,用于根据所述登记情况确定所述等待事务的执行策略;
数据修改模块,用于按照所述执行策略控制所述等待事务修改数据。
根据本发明的另一方面,本发明实施例还提供了一种电子设备,所述电子设备包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的数据库修改方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海达梦数据库有限公司,未经上海达梦数据库有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210347585.9/2.html,转载请声明来源钻瓜专利网。