模块11并发控制.PDF

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
模块11并发控制

概述 多事务执行方式 Ø事务串行执行 • 每个时刻只有一个事务运行,其他事务必须等到这个事务结 束以后方能运行 • 不能充分利用系统资源,发挥数据库共享资源的特点 Ø交并发方式 (Interleaved Concurrency) • 在单处理机系统中,事务的并行执行是这些事务的并行操 作轮流交运行 • 单处理机系统中的并行事务并没有真正地并行运行,但能 够减少处理机的空闲时间,提高系统的效率 Ø同时并发方式 (simultaneous concurrency) • 多处理机系统中,每个处理机可以运行一个事务,多个处理机可以 同时运行多个事务,实现多个事务真正的并行运行 事务并发执行 事务处理系统通常允许多个事务并发执行。 提高吞吐量和资源利用率。 减少等待时间。 事务并发执行 简单银行系统,其中有多个账户以存取、更新这些 账户的一组事务。设T1、T2是将资金从一个账户转移到 另一个账户的两个事务。 • 事务T1是从账户A过户50美 • 事务T2是从账户A过户10%的 元到账户B 的事务,这个事 存款余额到账户B的事务。这 务定义为: 个事务定义为 : T1: read (A); T2: read (A); A:=A - 50; temp:=A * 0.1; write (A); A:=A - temp; read (B); write (A); B:=B + 50; read (B); write (B) ; B:=B + temp; write (B) ; 事务并发执行 Ø设账户A和账户B当前分别 T1 T2 有1000美元和2000美元。 Read(A) Ø假设两个事务一个一个地 A:=A-50 执行,先是T1,然后是T2。 Write(A) 该执行顺序如图所示。 Read(B) B:=B+50 Ø按图的顺序执行后,账户 Write(B) A与B中最终的值分别为855 Read(A) 美元与2145美元。因此, Temp:=A*0.1 账户A与B的资金总数(即 A:=A-temp A+B)在两个事务执行后保 Write(A) Read(B) 持不变。

文档评论(0)

xiaozu + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档