下载此文档

《数据库系统概论》.ppt


文档分类:IT计算机 | 页数:约39页 举报非法文档有奖
1/39
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/39 下载此文档
文档列表 文档介绍
数据库系统概论
并发控制
1
整理课件
内容提要
并发控制是数据库管理系统的重要组成部分,通过本章的学****应重点掌握:
并发控制带来的新问题
封锁及封锁协议
并发调度的可串行性
两段锁协议
2
整理课件
概述
在单申请对它的X锁,则需等待。但此时若有其它事务申请对它的S锁,按相容矩阵,应可获准。如果不断有事务申请对此数据对象的S锁,以致它始终被S锁占有,而X锁的申请迟迟不能获准。这种现象叫活锁。
避免活锁的简单方法是采用“先来先服务”的策略。
14
整理课件
死锁
一个事务如果申请锁而未获准,则需等待其它事务释放锁。如果事务中出现循环等待时,如果不加干预,则会一直等待下去,这叫死锁。
对付死锁的方法:
检测死锁,发现死锁后处理死锁
防止死锁
15
整理课件
死锁的诊断(1)
超时法:如果一个事务的等待时间超过了某个时限,就认为发生死锁。
特点:
优点:简单
缺点:一是事务因其它原因(如系统负荷太重、通信受阻等)而使事务等待时间超过时限,可能被误判死锁。二是时限的设置。
16
整理课件
死锁的诊断(2)
等待图法:等待图是一个有向图G=(T,U)。
T为结点的集合,每个结点表示正在运行的事务
U为边的集合,每条边表示事务等待的情况
当且仅当等待图中出现回路时,死锁发生。
当运行的事务比较多时,维护等待图和检测回路的开销较大,影响系统的性能。
方法是周期性的进行死锁检测。死锁检测周期的确定用实验方法确定最佳值。
17
整理课件
死锁的解除(1)
出现死锁后,必须由DBMS干预。处理如下:
在循环等待的事务中,选一个事务作为“牺牲者”,给其它事务让路
撤销牺牲的事务,释放其获得的锁及其它资源
将释放的锁让给等待它的事务
被牺牲的事务可以有两种处理:
发消息给有关用户,由用户向系统再交付该事务
由DBMS重新启动该事务
注:被牺牲的事务应等待一段时间才能交付系统,否则可能再发生死锁。
18
整理课件
死锁的解除(2)
选择哪个事务作为牺牲者,由下列几种选法:
选择最迟交付的事务作为牺牲者
选择获得锁最少的事务作为牺牲者
选择撤销代价最小的事务作为牺牲者
19
整理课件
死锁的预防—一次封锁法
一次封锁法:要求每个事务必须一次将所有要使用的数据全部加锁。
缺点:
有些数据对象过早的加锁,降低了并发度
如果有些事务需要访问的“热点”数据比较多,其它事务总是不断的占有其中某些数据,不能一次获得所需要数据的全部,就会一直等待下去,易发生活锁。
20
整理课件
死锁的预防—顺序封锁法
顺序封锁法:预先对数据对象规定一个封锁顺序,所有事务都按这个顺序实行封锁。
缺点:
数据库中一般是按内容访问,而不是按名访问,所以很难预先确定所有的访问对象
数据经常变动,次序也经常调整
上述两种方法用于数据库系统不实际。
21
整理课件
死锁的预防—事务重执(1)
事务重执:当事务申请锁而未获准时,不是一律等待,而是让一些事务撤销重执。
为区别事务开始执行的先后,每个事务开始执行时,赋予一个唯一的、随时间增长的整数,称为时间标记,记为ts。如两个事务TA和TB,若ts(TA)< ts(TB),表明TA比TB“年老”
事务重执有两种策略
等待—死亡策略
击伤—等待策略
22
整理课件
死锁的预防—事务重执(2)
等待—死亡策略
设TB持有某对象数据的锁,当TA申请同一数据的锁发生冲突时,按如下规则处理:
If ts(TA)<ts(TB) then TA waits;
else {
rollback TA; / *die* /
restrat TA with the same ts(TA);
}
总是年老的事务等待年轻的事务。
23
整理课件
死锁的预防—事务重执(3)
击伤—等待策略
设TB持有某对象数据的锁,当TA申请同一数据的锁发生冲突时,按如下规则处理:
If ts(TA)>ts(TB) then TA waits;
else {
rollback TB; / *wound* /
restrat TB with the same ts(TB);
}
总是年轻的事务等待年老的事务。
24
整理课件
死锁的预防—事务重执(4)
上述两种策略中,当冲突发生时,总是以年轻的事务作为牺牲品。因为年轻的事务随着时间的流逝,总会变成年老的事务,不致永远成为牺牲品。
25
整理课件
并发调度的可串行性(1)
定义:多个事务的并发执行是正确的,当且仅当其结果与按某一次序串行地执行它们时的结果相同,称这种调度策略为可串行化的调度。
可串

《数据库系统概论》 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数39
  • 收藏数0 收藏
  • 顶次数0
  • 上传人相惜
  • 文件大小221 KB
  • 时间2022-08-07