教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 行业资料 >

《数据库系统概论》王珊 萨师煊(第四版)第11章课件

来源:网络收集 时间:2026-09-06
导读: 数据库系统概论An Introduction to Database System 第十一章 并发控制 中国人民大学信息学院An Introduction to Database System 问题的产生 多用户数据库系统的存在允许多个用户同时使用的数据库系统 飞机定票数据库系统 银行数据库系统 特点:在同一时刻

数据库系统概论An Introduction to Database System

第十一章

并发控制

中国人民大学信息学院An Introduction to Database System

问题的产生 多用户数据库系统的存在允许多个用户同时使用的数据库系统 飞机定票数据库系统 银行数据库系统 特点:在同一时刻并发运行的事务数可达数百个

An Introduction to Database System

问题的产生(续) 不同的多事务执行方式(1)事务串行执行 每个时刻只有一个事务运行,其他事务必须等到这个事务结束以后方能运行 不能充分利用系统资源,发挥数据库共 享资源的特点事务的串行执行方式 T2 T1

T3

An Introduction to Database System

问题的产生(续)(2)交叉并发方式(Interleaved Concurrency) 在单处理机系统中,事务的并行执行是这些并行事务 的并行操作轮流交叉运行 单处理机系统中的并行事务并没有真正地并行运行, 但能够减少处理机的空闲时间,提高系统的效率An Introduction to Database System

问题的产生(续)

事务的交叉并发执行方式An Introduction to Database System

问题的产生(续)(3)同时并发方式(simultaneous concurrency) 多处理机系统中,每个处理机可以运行一个事务,

多个处理机可以同时运行多个事务,实现多个事务真正的并行运行

An Introduction to Database System

问题的产生(续) 事务并发执行带来的问题 会产生多个事务同时存取同一数据的情况 可能会存取和存储不正确的数据,破坏事务一致性 和数据库的一致性

An Introduction to Database System

第十一章 并发控制11.1 并发控制概述11.2 封锁

11.3 活锁和死锁11.4 并发调度的可串行性

11.5 两段锁协议11.6 封锁的粒度 11.7 小结An Introduction to Database System

11.1 并发控制概述 并发控制机制的任务 对并发操作进行正确调度

保证事务的隔离性 保证数据库的一致性

An Introduction to Database System

并发控制概述(续)并发操作带来数据的不一致性实例[例1]飞机订票系统中的一个活动序列① 甲售票点(甲事务)读出某航班的机票余额A,设A=16; ② 乙售票点(乙事务)读出同一航班的机票余额A,也为16; ③ 甲售票点卖出一张机票,修改余额A←A-1,所以A为15,把A写回 数据库; ④ 乙售票点也卖出一张机票,修改余额A←A-1,所以A为15,把A写 回数据库

T1的修改被T2覆盖了!An Introduction to Database System

结果明明卖出两张机票,数据库中机票余额只减少1

并发控制概述(续) 这种情况称为数据库的不一致性,是由并发操作引起的。 在并发操作情况下,对甲、乙两个事务的操作序列的调度是随

机的。 若按上面的调度序列执行,甲

事务的修改就被丢失。 原因:第4步中乙事务修改A并写回后覆盖了甲事务的修改

An Introduction to Database System

并发控制概述(续) 并发操作带来的数据不一致性 丢失修改(Lost Update) 不可重复读(Non-repeatable Read) 读“脏”数据(Dirty Read)

记号 R(x):读数据x W(x):写数据xAn Introduction to Database System

1. 丢失修改 两个事务T1 和T2 读入同一数据并修改,T2 的提交结果破坏了T1 提交的结果,导致T1 的修改被丢失。

上面飞机订票例子就属此类

An Introduction to Database System

丢失修改(续)T1① R(A)=16

T2

②③ A←A-1 W(A)=15W ④

R(A)=16

A←A-1 W(A)=15丢失修改An Introduction to Database System

2. 不可重复读 不可重复读是指事务T1读取数据后,事务T2执行更新操作,使T1无法再现前一次读取结果。

An Introduction to Database System

不可重复读(续) 不可重复读包括三种情况: (1)事务T1读取某一数据后,事务T2对其做了修改, 当事务T1再次读该数据时,得到与前一次不同的 值

An Introduction to Database System

…… 此处隐藏:249字,全部文档内容请下载后查看。喜欢就下载吧 ……
《数据库系统概论》王珊 萨师煊(第四版)第11章课件.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/2272915.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)