- 1、本文档共327页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据库原理与设计方法东南大学自动控制系邵家玉下载
联系方式 EMAIL:qj@ sjy@ 邵家玉@中国 QQ: 171995639 MSN: bistone_shao@ POPO: bistone 定义7.8-2 一个事务如果遵守先加锁,后操作的原则,则此事务称为合式(well formed)事务。 定理7.8-1 如果所有事务都是合式、两段事务,则它们的任何调度都是可串行化的。 严格的2PL协议(strict 2PL protocol) 7.8.3??(S,X)锁 S锁(Sharing locks)用于读访问 X锁(eXclusive locks)用于写访问 活锁(live lock): first come first serve ?? 7.8.4?(S,U,X)锁 活锁(live lock): first come first serve ?? 7.9????死锁的检测、处理和防止 死锁(dead lock):对付死锁无非两种办法:一是检测死锁,发现死锁后处理死锁;二是防止死锁。 7.9.1?? 死锁的检测和处理 ?????? 1.???? 超时法 ?????? 2.??? 等待图法(wait-for graph) G=(W,U) 其中,W是结点的集合,w={Ti|Ti是数据库系统中当前运行的事务,i=1,2,…,n} U是边的集合,U={(Ti,Tj)|Ti等待Tj,i≠j} DBMS对死锁一般作如下处理: l??????? 在循环等待的事务中,选一个事务作为牺牲者(victim),给其他事务“让路”; l??????? 卷回牺牲的事务,释放其获得的锁及其他资源; l??????? 将释放的锁让给等待它的事务。 下面是选用连接方法的启发式规则。 (1)?? 如果两个关系都已按连接属性排序,则优先用排序归并法。如果两个关系中已有一个关系按连接属性排序,另一个关系很小,也可考虑对此未排序的关系按连接属性排序,再用排序归并法连接。 (2)?? 如果两个关系中有一个关系在连接属性上有索引(特别是簇集索引)或散列,则可令另一关系为外关系,顺序扫描,并利用内关系上的索引或散列寻找其匹配元组,以代替多遍扫描。 (3)?? 如果应用上述两规则的条件都不具备,且两个关系都比较小,可以应用嵌套循环法。 (4)?? 如果(1)、(2)、(3)规则都不适用,可用散列连接法。 6.3.3?? 投影操作的实现 6.3.4?? 集合操作的实现 6.3.5?? 组合操作 第七章???事务管理 恢复 事务管理 并发控制 7.1??? 恢复引论 fault error failure loss 1.??单纯以后备复本为基础的恢复技术 2.???以后备复本和运行记录(log或journal)为基础的恢复技术 运行记录包括: (1)? 前象(Before Image BI)——undo (2)? 后象(After Image AI)——redo (3)? 事务状态 commit rollback/abort backward recovery —— undo forward recovery —— redo 3.?? 基于多复本的恢复技术 independent failure mode 多服务器DBS: 1. 双机热备份 2. 双机CLUSTER 3.?磁盘阵列RAID0~5 4.?等 7.2???????? 运行记录的结构 1.?? Active Transaction List (ATL) 2.?? Committed Transaction List (CTL) 3.?? 前象文件 4.?? 后象文件 措施: 1.?? 不保留已提交事务的前象 2.? 有选择地保留后象 3.?? 合并后象 7.3?? 更新事务的执行与恢复 更新事务在执行时应遵守下列两条规则: 1. 提交规则(commit rule) 2. 先记后写规则(log ahead rule) 方案: 1.? 后象在事务提交前完全写入数据库 其步骤如下: (1)???? TID→ATL (2)???? BI→log /*先记后写规则*/ (3)???? AI→DB /*在提交前,后象完全写入DB, 满足提交规则*/ (4)???? TID→CTL (5)???? 从ATL中删除TID 2.? 后象在事务提交后才写入数据库 其步骤如下: (1)???? TID→ATL (2)???? AI→log /*提交规则*/ (3)???? TID→CTL (4)???? AI→DB (5)???? 从ATL中删除TID 3. 后象在事务提交前后
文档评论(0)