26、守护独立性与约束保留快照隔离技术解析

守护独立性与约束保留快照隔离技术解析

1. 引言

在过去几十年里,快照隔离(SI)已成为数据库管理系统(DBMS)中并发控制的首选事务隔离模式之一。在 SI 中,每个事务操作自己的数据库私有副本(即快照)。对于并发事务的提交,需要整合这些单独快照的结果。若存在写冲突,即多个事务写入同一数据对象,那么只有一个事务允许提交,其他事务若未以其他方式自然终止则必须中止。

1.1 SI 的优势与不足

  • 优势 :SI 避免了许多与读未提交(RU)和读已提交(RC)策略相关的更新异常,如脏读和不可重复读。同时,随着多版本并发控制(MVCC)的广泛使用,它实现高效,避免了基于锁的严格两阶段锁定(SS2PL)带来的许多性能瓶颈。
  • 不足 :SI 允许一些在视图序列化下不会出现的不良行为,如读写偏差。

1.2 扩展 SI 的尝试

为实现真正的视图序列化,人们对扩展 SI 产生了浓厚兴趣。由此开发出了可序列化快照隔离(SSI),它是一种乐观的方法。在标准 SI 的基础上,SSI 会查找危险结构,即并发事务在多版本冲突图中的两个连续读写边序列。若发现此类结构,参与事务之一需中止而不提交结果。然而,危险结构的存在只是并发事务在 SI 下不可序列化的必要条件,而非充分条件,因此 SSI 策略会产生误判。

1.3 示例说明

假设有一个数据库模式 E0,包含 n 个整数值数据对象 d0, d1, …, dn - 1。事务 τi 会将 di 的值替换为 d(i + 1) mod n 的当前值。在 SI

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值