数据库原理课件--11_并发控制.ppt
上传人:qw****27 上传时间:2024-09-12 格式:PPT 页数:75 大小:1.3MB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

数据库原理课件--11_并发控制.ppt

数据库原理课件--11_并发控制.ppt

预览

免费试读已结束,剩余 65 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

数据库系统概论AnIntroductiontoDatabaseSystem第十一章并发控制多事务执行方式(3)同时并发方式(simultaneousconcurrency)多处理机系统中,每个处理机可以运行一个事务,多个处理机可以同时运行多个事务,实现多个事务真正的并行运行最理想的并发方式,但受制于硬件环境更复杂的并发方式机制事务并发执行带来的问题第十一章并发控制11.1并发控制概述数据不一致实例:飞机订票系统并发操作带来的数据不一致性1.丢失修改2.不可重复读三类不可重复读3.读“脏”数据第十一章并发控制一、什么是封锁二、基本封锁类型基本封锁类型三、锁的相容矩阵图11.4使用封锁机制解决三种数据不一致性的示例第十一章并发控制11.3活锁和死锁11.3.1活锁如何避免活锁11.3.2死锁解决死锁的方法1.死锁的预防死锁的预防(续)(1)一次封锁法(2)顺序封锁法(2)顺序封锁法死锁的预防(续)2.死锁的诊断与解除检测死锁:超时法等待图法死锁的诊断与解除(续)第十一章并发控制11.4并发调度的可串行性11.4.1可串行化调度事务并发执行举例11.4.1可串行化调度(续)11.4.1可串行化调度(续)11.4.1可串行化调度(续)(a)(b)串行调度策略,正确的调度SlockBY=B=2UnlockBXlockAA=Y+1写回A(=3)UnlockA11.4.2冲突可串行化调度11.4.2冲突可串行化调度(续)11.4.2冲突可串行化调度(续)11.4.2冲突可串行化调度(续)第十一章并发控制目前DBMS常采用两段锁(Two-PhaseLocking,2PL)协议的方法实现并发调度的可串行性,从而保证调度的正确性。封锁协议何时申请加锁持锁时间、何时释放锁两段锁协议是最常用的一种封锁协议,理论上已证明使用它产生的是可串行化调度。11.5两段锁协议(续)两段锁协议(续)两段锁协议(续)两段锁协议(续)两段锁协议(续)两段锁协议(续)第十一章并发控制11.6封锁的粒度11.6.1封锁粒度什么是封锁粒度(续)选择封锁粒度的原则11.6.2多粒度封锁多粒度封锁协议对某个数据对象加锁时系统检查的内容11.6.3意向锁意向锁(续)常用意向锁意向锁(续)意向锁(续)意向锁(续)第十一章并发控制11.7小结小结(续)小结(续)小结(续)下课了。。。