- 9
- 0
- 约4.25千字
- 约 37页
- 2016-11-06 发布于湖北
- 举报
并发调度的可串行性(续) 视图可串行化 若一个调度S与一个串行调度视图等价,则S是视图可串行化的。 视图可串行化的调度,一定是可串行化的调度! 并发控制技术 四、两段锁协议 两段锁协议 两段锁协议(Two-Phase Locking,简称2PL)是最常用的一种封锁协议,理论上证明使用两段封协议产生的是可串行化调度。 两段锁协议 指所有事务必须分两个阶段对数据项加锁和解锁 。 在对任何数据进行读、写操作之前,事务首先要获得对该数据的封锁 在释放一个封锁之后,事务不再申请和获得任何其他封锁 两段锁协议(续) “两段”锁的含义 事务分为两个阶段: 第一阶段是获得封锁,也称为扩展阶段 事务可以申请获得任何数据项上的任何类型的锁,但是不能释放任何锁 第二阶段是释放封锁,也称为收缩阶段 事务可以释放任何数据项上的任何类型的锁,但是不能再申请任何锁 两段锁协议(续) 【例】事务Ti遵守两段锁协议,其封锁序列是 : Slock A Slock B Xlock C Unlock B Unlock A Unlock C; |← 扩展阶段 →| |← 收缩阶段 →| 事务Tj不遵守两段锁协议,其封锁序列是: Slock A Unlock A Slock B Xlock C Unlock C Unlock B; 两段锁协议(续) 事务遵守两段锁协议是可串行化调度的充分条件,而不是必要条件 若并发事务都遵守两段锁协议,则对这些事务的任何并发调度策略都是可串行化的。 若并发事务的一个调度是可串行化的,不一定所有事务都符合两段锁协议 。 两段锁协议(续) 两段锁协议与防止死锁的一次封锁法 一次封锁法要求每个事务必须一次将所有要使用的数据全部加锁,否则就不能继续执行,因此一次封锁法遵守两段锁协议。 但是两段锁协议并不要求事务必须一次将所有要使用的数据全部加锁,因此遵守两段锁协议的事务可能发生死锁。 两阶段协议与三级封锁协议 三级封锁协议规定:排他锁和共享锁均需在事务结束时释放,因此,三级封锁协议遵守两段锁协议。 两段锁协议(续) 两段锁协议的几种形式: 基本2PL 保守2PL或静态2PL(一次封锁协议) 严格2PL:排他锁必须在事务结束时释放 精确2PL:(三级封锁协议) 遵守两段锁协议的事务可能发生死锁 并发控制技术 本讲内容结束! 作业:P306 9,10两题 第十一讲 并发控制技术 并发控制技术 一、并发控制概述 二、封锁技术 三、并发调度的可串行性 四、两段锁协议 并发控制技术 一、并发控制概述 并发控制概述 多用户的并发访问 允许多个用户同时使用的数据库系统 飞机定票数据库系统 银行数据库系统 特点:在同一时刻并发运行的事务数可达数百个 不同的多事务执行方式 (1) 事务串行执行 (2) 交叉并发方式 (3) 同时并发方式 并发控制概述(续) 事务并发执行带来的问题 会产生多个事务同时存取同一数据的情况 可能会存取和存储不正确的数据,破坏事务一致性和数据库的一致性 并发控制机制的任务 对并发操作进行正确调度 保证事务的隔离性 保证数据库的一致性 并发控制概述(续) 实例分析 [例] 飞机订票系统中的一个活动序列 ① 甲售票点(甲事务)读出某航班的机票余额A,设A=16; ② 乙售票点(乙事务)读出同一航班的机票余额A,也为16; ③ 甲售票点卖出一张机票,修改余额A←A-1,所以A为15,把A写回数据库; ④ 乙售票点也卖出一张机票,修改余额A←A-1,所以A为15,把A写回数据库。 结果明明卖出两张机票,数据库中机票余额只减少1 ! 并发控制概述(续) 并发操作带来的数据不一致性 丢失修改(Lost Update) 不可重复读(Non-repeatable Read) 读“脏”数据(Dirty Read) 记号 R(x): 读数据x W(x): 写数据x 并发控制概述(续) 并发控制的主要技术 有封锁(Locking) 时间戳(Timestamp) 乐观控制法 商用的DBMS一般都采用封锁方法 并发控制技术 二、封锁技术 封锁技术 什么是封锁 封锁就是事务T在对某个数据对象(例如表、记录等)操作之前,先向系统发出请求,对其加锁; 加锁后事务T就对该数据对象有了一定的控制,在事务T释放它的锁之前,其它的事务不能更新此数据对象。 基本封锁类型 排它锁(Exclusive Locks,简记为X锁) 共享锁(Share Locks,简记为S锁) 封锁技术(续) Y=
您可能关注的文档
最近下载
- 瓦斯抽采管路与电缆及通信电缆交叉点岔门处同侧悬挂安全技术措施2.docx VIP
- 2025至2030中国CMP抛光材料行业发展趋势分析及投资前景预测报告.docx VIP
- 2025年山东省高职院校综合评价招生考试(素质测试)历年参考题库含答案详解.docx VIP
- 2025年南京机电职业技术学院单招语文测试题库标准卷.docx VIP
- Altium Designer电路设计与制作(第三版)教案全套 陈学平 项目1--6 Altium Designer 20.1 的简介---交通信号灯的设计与制作 .docx
- 整套教学课件《植物病虫害防治》ppt.pptx VIP
- 2026年党支部在学习贯彻党的创新理论等“对照五个方面”存在的问题及整改措施4280字范文.docx VIP
- GB50169-2016 电气装置安装工程接地装置施工及验收规范附条文.docx VIP
- 2022年度组织生活会全套资料(方案、对照检查材料、报告、批评意见1).docx VIP
- gb51348-2019民用建筑电气设计标准.docx VIP
原创力文档

文档评论(0)