首页 > 知识点讲解
       事务调度
知识路径: > 数据库技术 > 事务管理 > 数据库的并发控制 > 事务调度 > 
被考次数:4次     被考频率:中频率     总体答错率:52%     知识难度系数:     
相关知识点:20个      
               串行调度
               串行调度(serial schedule)是指多个事务依次串行执行,且只有当一个事务的所有操作都执行完后才执行另一个事务的所有操作。
               我们考虑一个简单的银行数据库系统。设每个账号在数据库中具有一条数据库记录,用以记录这个账号的存款数量和其他信息。设有两个事务T0和T1,事务T0从账号A转2000元到账号B;事务T1从账号A转20%的款到账号B。T0和T1的定义如下图所示。
               
               银行转账举例
               假设用A和B表示账号A和账号B的存款数量;A、B的初值为10 000和20 000。如果这两个事务串行执行,可以有两种调度方案。调度S1是先执行T0后执行T1,如下图(a)所示。运行结束时,A和B的最终值分别是6400和23 600。调度S2是先执行T1后执行T0,如下图(b)所示。运行结束时,A和B的最终值分别是6000和24 000。无论采用两种方案的任一种,A+B在两个事务执行结束时仍然是10 000+20 000。
               
               事务的串行调度
               从上面的例子可以看出,不论是先执行T0后执行T1,还是先执行T1后执行T0,只要是串行调度,执行的结果都是稳定的和正确的。对于N个事务,最多有N!种正确的串行调度。
               并发调度
               并发调度(concurrent schedule):利用分时的方法同时处理多个事务。
               对于N个事务进行并发调度,情况会变得复杂得多,它的调度方案远大于N!个,而且并发调度的结果有可能是错误的。下图(a)调度S3是一个并发调度,其执行的结果与串行调度执行的结果相同,则称这个并发调度是正确的。下图(b)调度S4也是一个并发调度,但其导致A、B的最终结果为8000和24 000,A+B=8000+24 000≠30 000,这个结果是错误的。我们称此并行调度将产生不一致状态。
               
               事务的并发调度
               可恢复调度
               若事务Ti提交失败,则应当撤销Ti的影响以保证其原子性。在允许并发执行的系统中,还必须确保依赖于Ti的任何事务Tj也中止。例如,Tj要读Tj写的数据,则称Tj依赖于Ti
               例如,下图所示的调度示例。假设系统允许T1执行完read(A)后立即提交,则T1就先于T0提交。假设T0在提交前发生故障,由于T1依赖T0(T1要读T0写的数据),为了保证事务的原子性必须中止T1的提交。但本例允许T1执行完read(A)后立即提交,导致T0发生故障后不能正确恢复的情景。
               
               不可恢复的调度举例
               可恢复调度(recoverable schedule)应满足:当事务Tj要读事务Ti写的数据时,事务Ti必须要先于事务Tj提交。
 
本知识点历年真题:
隶属试卷 题号/题型 题干 难度系数/错误率
   2016年上半年
   数据库系统工程..
   上午试卷 综合知识
第54题
选择题
如右图所示的并发调度,假设事务T1、T2执行前数据项X、Y的初值为X=100,Y=200。该调度执行完成后,X、Y的值为(54);此类不一致性称为(55)。

63%
 
 相关知识点:
 
软考在线指南
优惠劵及余额
在线支付
修改密码
下载及使用
购买流程
取消订单
联系我们
关于我们
联系我们
商务合作
旗下网站群
高级资格科目
信息系统项目管理师 系统分析师
系统架构设计师 网络规划设计师
系统规划与管理师
初级资格科目
程序员 网络管理员
信息处理技术员 信息系统运行管理员
中级资格科目
系统集成项目管理工程师 网络工程师
软件设计师 信息系统监理师
信息系统管理工程师 数据库系统工程师
多媒体应用设计师 软件评测师
嵌入式系统设计师 电子商务设计师
信息安全工程师
 

本网站所有产品设计(包括造型,颜色,图案,观感,文字,产品,内容),功能及其展示形式,均已受版权或产权保护。
任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
本站部分内容来自互联网或由会员上传,版权归原作者所有。如有问题,请及时联系我们。


工作时间:9:00-20:00

客服

点击这里给我发消息 点击这里给我发消息 点击这里给我发消息

商务合作

点击这里给我发消息

客服邮箱service@rkpass.cn


京B2-20210865 | 京ICP备2020040059号-5 |京公网安备 11010502032051号 | 营业执照 | Copyright ©2000-2023 All Rights Reserved 软考在线版权所有