1 .一种数据库中事务并发控制的方法,其特征在于,所述数据库基于两阶段锁定协议
处理事务,所述方法包括:
在读取阶段,事务通过将相应的状态信息存储在锁管理器中来获取读取锁或写入锁,
以在冲突事务提交时确认冲突事务之间的优先级;
将冲突检测从读取阶段延迟到提交阶段,并在提交阶段解决冲突事务时,按照冲突事
务的状态信息进行序列化处理,以保证冲突事务的优先级。
2 .根据权利要求1所述的方法,其特征在于,还包括:
为每个工作线程创建一个私有缓冲区,并在读取阶段控制写操作在所述私有缓冲区中
修改,以防止读取不完整或未提交的数据。
3 .根据权利要求1所述的方法,其特征在于,所述状态信息包括时间戳信息,所述序列
化处理为按照时间戳顺序进行序列化处理。
4 .根据权利要求3所述的方法,其特征在于,所述在提交阶段解决冲突事务时,按照冲
突事务的状态信息进行序列化处理,以保证冲突事务的优先级,包括:
判断当前事务的时间戳是否大于其他事务的时间戳;
如果当前事务的时间戳大于其他事务的时间戳,则中止当前事务;
如果当前事务的时间戳小于或等于其他事务的时间戳,控制提交事务等待,直到有冲
突的事务提交。
5 .根据权利要求1所述的方法,其特征在于,还包括:
对于写写冲突,事务直接延迟获取写锁;
对于盲写操作,事务在提交阶段获取写锁;
对于读‑修改‑写操作,事务在读取阶段获取共享锁,并在提交阶段将共享锁升级为独
占模式。
6 .根据权利要求1所述的方法,其特征在于,还包括:
通过使用无锁锁定的方式,在不同阶段获取锁并检测冲突。
7 .根据权利要求6所述的方法,其特征在于,还包括:
通过使用原子词的无锁列表实现无锁锁定;其中,在原子词中为每个工作线程分配一
个位,该位的偏移量由工作线程的ID决定,当获得读锁时,将对应的位设置为1,并检查独占
条目是否已经设置,如果独占条目已设置,则将其对应的位清零并等待。
8.一种数据库中事务并发控制的装置,其特征在于,所述数据库基于两阶段锁定协议
处理事务,所述装置用于:
在读取阶段,事务通过将相应的状态信息存储在锁管理器中来获取读取锁或写入锁,
以在冲突事务提交时确认冲突事务之间的优先级;
将冲突检测从读取阶段延迟到提交阶段,并在提交阶段解决冲突事务时,按照冲突事
务的状态信息进行序列化处理,以保证冲突事务的优先级。
9 .一种电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并能够在所
述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7
中任一项所述的数据库中事务并发控制的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程
序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的数据库中事务并
权 利 要 求 书
1/2 页
2
评论