全球旧事资料 分类
谓“两段”锁的含义是,事务分为两个阶段,第一阶段是获得封锁,也称为扩展阶段。在这阶段,事务可以申请获得任何数据项上的任何类型的锁,但是不能释放任何锁。第二阶段是释放封锁,也称为收缩阶段。在这阶段,事务可以释放任何数据项上的任何类型的锁,但是不能再申请任何锁。例如事务T1遵守两段锁协议,其封锁序列是:如右又如事务T2不遵守两段锁协议,其封锁序列是:SlockA…U
lockA…SlockB…XlockC…U
lockC…U
lockB;可以证明,若并发执行的所有事务均遵守两段锁协议,则对这些事务的任何并发调度策略都是可串行化的。另外要注意两段锁协议和防止死锁的一次封锁法的异同之处。一次封锁法要求每个事务必须一次将所有要使用的数据全部加锁,否则就不能继续执行,因此一次封锁法遵守两段锁协议;但是两
f段锁协议并不要求事务必须一次将所有要使用的数据全部加锁,因此遵守两段锁协议的事务可能发生死锁。
(2)并发控制机制划分为两种类型:
悲观并发控制法和乐观并发控制法悲观算法使事务的并发执行在执行生命周期的开始就同步化,而乐观算法则将同步化延迟到事务执行周期的结束。(3)基本封锁算法(1)简单的分布式封锁方法数据更新时,要将同一数据的全部副本封锁,然后对其进行更新,更新完成后解除全部上述封锁。
f(2)主站点封锁法模拟集中式,选定一个站点定义为“主站点”,负责系统全部封锁管理。所有站点都向这个主站点提出封锁和解锁请求,所有封锁和解锁信息都被传送到那个主站点管理和保存,然后有主站点去处理封锁事宜。(3)主副本封锁法该方法不指定主站点,而对每个数据项指定一个主副本,不同数据项的主副本放在不同的站点上。当处理程序对某个数据项进行操作时,先对此数据项的主副本进行封锁,然后再进行操作,这就意味着对此数据项的所有副本都封锁。(4)快照方法快照方法类似于视图的一种导出关系,但又与视图不同。它是实际数据的暂时凝聚,是数据库的一种存储方式。快照方法不考虑数据的复制,只考虑每一数据的“主副本”和定义在这些“主副本”上的任意多个快照。快照可以定义为一个或多个“主副本”的部分拷贝,也可以定义为某个或某些“主副本”的全拷贝。
fr
好听全球资料 返回顶部