第8章事务与并发控制.ppt
《第8章事务与并发控制.ppt》由会员分享,可在线阅读,更多相关《第8章事务与并发控制.ppt(47页珍藏版)》请在课桌文档上搜索。
1、第8章 事务与并发控制,8.1 事务8.1.1 事务的基本概念8.1.2 事务的特征8.1.3 事务处理模型8.2 并发控制,8.1.1 事务的基本概念,事务是用户定义的数据操作系列,这些操作作为一个完整的工作单元,一个事务内的所有语句被作为一个整体,要么全部执行,要么全部不执行。例如:对于一个转帐活动:A帐户转帐给B帐户n元钱,这个活动包含两个动作:第一个动作:A帐户 n 第二个动作:B帐户 n,说明,假设第一个操作成功了,第二个操作由于某种原因没有成功,在系统恢复正常后,A账户的金额应是多少?如果B账户的金额没有变化,则正确的情况是A账户的金额也应该没有变化。怎样保证在系统恢复之后,A账户
2、中的金额没有减少?这就要用到事务的概念。事务可以保证在一个事务中的全部操作或者全部成功,或者全部失败。,8.1.2 事务的特征,原子性(Atomicity):指事务是数据库的逻辑工作单位,事务中的操作要么都做,要么都不做。一致性(Consistency):指事务执行的结果必须是使数据库从一个一致性状态变到另一个一致性状态。隔离性(Isolation):指数据库中一个事务的执行不能被其它事务干扰。持久性(Durability):也称为永久性。指事务一旦提交,其对数据库数据的改变就是永久的。,保证事务的ACID特性是事务处理的重要任务。事务的ACID特性可能遭到破坏的因素有:多个事务并行运行时,不
3、同事务的操作有交叉情况;事务在运行过程中被强迫停止。,8.1.3 事务处理模型,隐式事务:隐式事务是每一条数据操作语句都自动地成为一个事务。显式事务:有显式的开始和结束标记的事务。ISO事务处理模型 T-SQL事务处理模型(SQL Server采用),T-SQL事务处理模型,每个事务都有显式的开始和结束标记。事务的开始标记是:BEGIN TRANSACTION|TRAN事务的结束标记为:COMMIT TRANSACTIONTRANROLLBACK TRANSACTIONTRAN,示例,BEGIN TRANSACTION UPDATE 支付表 SET 帐户总额=帐户总额-nWHERE 帐户名=A
4、UPDATE 支付表 SET 帐户总额=帐户总额+nWHERE 帐户名=BCOMMIT,8.2 并发控制,8.2.1 并发控制概述 8.2.2 并发控制措施8.2.3 封锁协议8.2.4 活锁和死锁8.2.5 并发调度的可串行性 8.2.6 两段锁协议,8.2.1 并发控制概述,数据库中的数据是一个共享的资源,因此会有很多用户同时使用数据库中的数据,在多用户系统中,可能同时运行着多个事务,而事务的运行需要时间,并且事务中的操作是在一定的数据上进行的。当系统中同时有多个事务在运行时,特别是当这些事务是对同一段数据进行操作时,彼此之间就有可能产生相互干扰的情况。如:订票、银行,不同的多事务执行方式
5、,串行执行每个时刻只有一个事务运行,其他事务必须等到这个事务结束以后方能运行。问题:不能充分利用系统资源,发挥数据库共享资源的特点。,不同的多事务执行方式,交叉并行执行在单处理机系统中,事务的并行执行是这些并行事务的并行操作轮流交叉运行。单处理机系统中的并行事务并没有真正地并行运行,但能够减少处理机的空闲时间,提高系统的效率。,不同的多事务执行方式,同时并发方式多处理机系统中,每个处理机可以运行一个事务,多个处理机可以同时运行多个事务,实现多个事务真正的并行运行。这里讨论单处理机环境下的并发控制技术。,并发事务的相互干扰示例,A、B两个订票点恰巧同时办理同一架航班的飞机订票业务。设其操作过程及
6、顺序如下:A订票点(事务A)读出航班目前的机票余额数,假设为10张;B订票点(事务B)读出航班目前的机票余额数,也为为10张;A订票点订出6张机票,修改机票余额为10-6=4,并将4写回到数据库中;B订票点订出5张机票,修改机票余额为10-5=5,并将5写回到数据库中;,事务并发执行带来的问题,会产生多个事务同时存取同一数据的情况。可能会存取和存储不正确的数据,破坏事务一致性和数据库的一致性。并发控制是衡量DBMS性能的重要标志之一。,并发操作带来的数据不一致性,丢失修改读“脏”数据不可重复读产生“幽灵”数据,丢失修改,读“脏”数据,不可重复读,产生“幽灵”数据,属于不可重复读的范畴。指当事务
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 事务 并发 控制

链接地址:https://www.desk33.com/p-751312.html