【计算机类职业资格】事务调度与并发控制及答案解析.doc
《【计算机类职业资格】事务调度与并发控制及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】事务调度与并发控制及答案解析.doc(21页珍藏版)》请在麦多课文档分享上搜索。
1、事务调度与并发控制及答案解析(总分:80.00,做题时间:90 分钟)一、B选择题/B(总题数:29,分数:58.00)1.某系统中事务 T1 从账户 A 转出资金到账户 B 中,在此事务执行过程中,另一事务 T2 要进行所有账户金额统计操作。在 T1 和 T2 事务成功提交后,数据库服务器突然掉电重启。为了保证 T2 事务统计结果及重启后 A,B 两账户金额正确,需利用到的事务性质分别是_。 A.一致性和隔离性 B.隔离性和持久性 C.原子性和一致性 D.原子性和持久性(分数:2.00)A.B.C.D.2.在 SQL Server 2000 中,某数据库中有教师表(教师号,姓名,职称),其中
2、教师号的数据类型是整型,其他均为字符类型。若教师表中当前没有数据,用户在数据库中依次执行下列语句:BEGIN TRANSACTION T1INSERT INTO 教师表 VALUES(1000, 张三, 助教);INSERT INTO 教师表 VALUES(1001, 王二, 助教);COMMIT T1;BEGIN TRANSACTION T2;INSERT INTO 教师表 VALUES(1002, 王三, 讲师);INSERT INTO 教师表 VALUES(1003, 李四, 讲师);COMMIT T2;在执行的时候数据库所在的服务器突然掉电,当数据库系统重新启动后,教师表中包含的数据条
3、数为_。 A.4 条 B.3 条 C.2 条 D.0 条(分数:2.00)A.B.C.D.3.事务 T0、T1 和 T2 并发访问数据项 A、B 和 C,下列属于冲突操作的是_。 A.T0 中的 read(A)和 T0 中的 write(A) B.T0 中的 read(B)和 T2 中的 read(C) C.T0 中的 write(A)和 T2 中的 write(C) D.T1 中的 read(C)和 T2 中的 write(C)(分数:2.00)A.B.C.D.4.事务是数据库技术中一个非常重要的概念。下列关于事务的说法,错误的是_。 A.当某事务未执行完成时,数据库暂时处于不一致状态,这时
4、其他事务不会因这种不一致状态而出现数据错误 B.事务并发执行可以提高系统性能,但可能会导致数据出现问题。为了保证数据库数据的一致性,对事务的调度一般尽可能采用串行调度策略 C.利用日志文件进行数据库事务故障恢复和系统故障恢复是实现事务持久性的重要手段 D.存储管理器以事务方式访问数据库中的数据,确保数据库状态的一致性(分数:2.00)A.B.C.D.5.以下关于事务的说法错误的是_。 A.事务是构成数据库应用中一个独立逻辑工作单元的操作的集合 B.事务是访问并可能更新数据库中各种数据项的一个程序执行单元 C.事务以 begin-transaction 语句开始 D.事务都是以 commit 语
5、句结束(分数:2.00)A.B.C.D.6.数据库管理系统采用三级加锁协议来防止并发操作可能导致的数据错误。在三级加锁协议中,一级加锁协议能够解决的问题是_。 A.丢失修改 B.不可重复读 C.读脏数据 D.死锁(分数:2.00)A.B.C.D.7.事务 T 对数据对象 A 加上何种锁,其他事务只能再加对 A 加 S 锁,不能加 X 锁,直到事务 T 释放 A 上的S 锁为止?_ A.共享锁 B.排他锁 C.独占锁 D.写锁(分数:2.00)A.B.C.D.8.如果某事务获得了数据项 A 上的排它锁,则其他事务对数据项 A_。 A.可以进行任何操作 B.只能写不能读 C.即可以读也可以写 D.
6、不能读也不能写(分数:2.00)A.B.C.D.9.在数据库管理系统中,为保证并发事务的正确执行,需采用一定的并发控制技术。下列关于基于锁的并发控制技术的说法,错误的是_。 A.锁是一种特殊的二元信号量,用来控制多个并发事务对共享资源的使用 B.数据库中的锁主要分为排它锁和共享锁,当某个数据项上已加有多个共享锁时,此数据项上只能再加一个排它锁 C.数据库管理系统可以采用先来先服务的方式防止出现活锁现象 D.当数据库管理系统检测到死锁后,可以采用撤销死锁事务的方式解除死锁(分数:2.00)A.B.C.D.10.基于锁的并发控制技术可以避免并发操作引起的各种错误,但有可能引起死锁等问题。关于封锁协
7、议中的问题及其处理,下列说法错误的是_。 A.数据库管理系统采用死锁检测与恢复策略使系统摆脱死锁状态 B.如果系统进入死锁状态的概率比较低,则应采用死锁预防策略,否则采用死锁检测与恢复策略更有效 C.为避免活锁(事务饿死)现象的发生,数据库管理系统可以采用先来先服务(FIFS)策略处理事务的数据操作请求 D.数据库系统的并发控制子系统动态地构造和维护事务等待图,并周期性地检查图中是否存在回路,如果有则说明系统中出现了死锁(分数:2.00)A.B.C.D.11.某数据库应用系统使用 SQL Server 2000 作为数据库平台。在系统运行期间,用户反映某更新操作很慢,无法正常完成业务。系统工程
8、师分别在用户的客户机和数据库服务器上使用数据库管理系统自带的客户端工具执行此更新操作语句,发现该语句执行后长时间无响应。经检查数据库服务器 CPU 使用率小于 1%,磁盘 IO 也非常小。造成此现象可能的原因是_。 A.客户机到数据库服务器的网络故障 B.更新操作涉及的表没有建立主码 C.更新的字段没有建立有效的索引 D.更新操作涉及的数据被锁定(分数:2.00)A.B.C.D.12.以下关于锁粒度叙述错误的是_。 A.施加 X 锁和 S 锁的数据项的大小称为锁粒度 B.锁粒度与事务并发执行的程度和 DBMS 并发控制的开销密切相关 C.在关系数据库中,可以对数据页、索引页和块等物理单元进行加
9、锁 D.当锁粒度比较大时,事务并发度高,但系统开销也较大(分数:2.00)A.B.C.D.13.下列关于封锁协议的说法中正确的是_。 A.一级封锁协议可防止 Dirty Read 和 Lost Update B.二级封锁协议可防止 Dirty Read 和 None-Repeatable Read C.三级封锁协议可防止 Dirty Read 和 None-Repeatable Read D.各级封锁协议均可防止 Dirty Read 和 None-Repeatable Read(分数:2.00)A.B.C.D.14.设某数据库中有一组客户数据 CS=c1,cm,CS 表示具有 m 个客户的集
10、合。客户数据经过处理后,每个客户 ci 对应一个 n 维向量 Vi=vi1,vim,用于表示客户 ci 的特征。设有函数 sim(Vi,Vj)用于判定 ci 与 cj 之间的相似性。若有算法 A,能根据客户间的相似性,将 CS 划分成 k 个子集合,并使属于同一子集合的客户间的相似性尽可能大,不属于同一子集合的客户间的相似性尽可能小。则算法 A 属于一种_。 A.分类算法 B.聚类算法 C.关联分析算法 D.预测法(分数:2.00)A.B.C.D.15.下列三级加锁协议的作用的说法中错误的是_。 A.一级加锁协议要求事务 T 在修改数据项 Q 之前必须先对 Q 加 X 锁,直到事务结束才释放该
11、锁 B.二级加锁协议是在一级加锁协议基础上,要求事务 T 在读取数据项 Q 之前必须先对其加 S 锁,读完 Q 后可以立即释放 S 锁 C.三级加锁协议是在一级加锁协议基础上,要求事务 T 在读取数据项 Q 之前必须先对其加 S 锁,读完 Q 后可以立即释放 S 锁 D.对并发操作的不正确调度可能会导致数据库中数据的不一致,三级加锁协议暂时无法解决这一问题(分数:2.00)A.B.C.D.16.两阶段锁协议可以保证并发调度的可串行性。关于两阶段锁协议,下列说法错误的是_。 A.在一个可串行化调度中,并不一定所有事务都必须符合两阶段锁协议 B.如果一个事务遵循两阶段锁协议,则这个事务中的第一个解
12、锁操作必须出现在该事务的最后一个加锁操作之后 C.如果一个事务已经对数据项 A 加了共享锁,则其他事务不能再对 A 加任何锁 D.在解锁阶段,事务可以释放任何数据项上的任何类型的锁(分数:2.00)A.B.C.D.17.下列事务隔离级别中最强的是_。 A.Read Uncommitted B.Read Committed C.Repeatable Read D.Serializable(分数:2.00)A.B.C.D.18.下列关于排他锁和共享锁的说法中错误的是_。 A.只能有一个事务对加锁项加排他锁 B.排他锁也叫独占锁或 X 锁,共享锁也叫读锁或者 S 锁 C.当加了 S 锁以后,其他的事
13、务还可以对加锁项加 X 锁 D.当加了 S 锁以后,其他的事务还可以对加锁项加 S 锁(分数:2.00)A.B.C.D.19.下列关于优良数据库标准的说法中错误的是_。 A.一个好的数据库系统应当根据用户需求,提供多种不同粒度的加锁单元供数据库用户选择 B.需要处理大量元组的事务可以选择较小的锁粒度,以关系为加锁单位 C.需要处理多个关系的大量元组的事务可以以数据库为加锁单位 D.对于一个处理少量元组的事务,可以以关系为加锁单位(分数:2.00)A.B.C.D.20.死锁是数据库系统中可能出现的一种状态。下列有关死锁的说法错误的是_。 A.当事务由于无法获得对需要访问的数据项的控制权而处于等待
14、状态时,称数据库中产生了死锁 B.死锁是由于系统中各事务间存在冲突操作且冲突操作的并发执行顺序不当而产生的 C.死锁预防可以使用一次加锁和顺序加锁两种方法,其中一次加锁法可能会降低系统的并发程度 D.解除死锁通常采用的方法是选择一个或几个造成死锁的事务,撤销这些事务并释放其持有的锁(分数:2.00)A.B.C.D.21.若系统中存在四个等待事务 T0、T1、T2、T3,其中 T0 正等待被 T1 锁住的数据项 A1,T1 正等待被 T2锁住的数据项 A2,T2 正等待被 T3 锁住的数据项 A3,T3 正等待被 T0 锁住的数据项 A0。根据上述描述,系统所处的状态是_。 A.活锁 B.死锁
15、C.封锁 D.正常(分数:2.00)A.B.C.D.22.数据库系统中部分或全部事务由于无法获得对需要访问的数据项的控制权而处于等待状态,并且一直等待下去的一种系统状态的情况称为_。 A.活锁 B.死锁 C.排他锁 D.共享锁(分数:2.00)A.B.C.D.23.以下关于一次加锁法及其缺点叙述错误的是_。 A.该方法要求每个事务在开始执行时不必将需要访问的数据项全部加锁 B.要求事务必须一次性地获得对需要访问的全部数据项的访问权 C.多个数据项会被一个事务长期锁定独占,降低了系统的并发程度 D.将事务执行时可能访问的所有数据项全部加锁,进一步降低了系统的并发程度(分数:2.00)A.B.C.
16、D.24.以下关于顺序加锁法及其缺点叙述错误的是_。 A.该方法对数据库中事务访问的所有数据项规定一个加锁顺序 B.每个事务在执行过程中必须按顺序对所需数据项加锁 C.维护对这些数据项的加锁顺序很困难,代价非常大 D.事务按照固定的顺序对这些数据项进行加锁比较方便(分数:2.00)A.B.C.D.25.以下关于死锁检测与恢复叙述错误的是_。 A.死锁检测用来定期检查系统是否发生死锁 B.死锁恢复用于将系统从死锁中解救出来 C.有效的方法是从后向前 REDO 这个事务的部分操作,只要能够解开系统死锁即可 D.为了防止某些事务总被选做被撤销事务,可以限定每个事务被选为撤销事务的次数(分数:2.00
17、)A.B.C.D.26.以下关于死锁叙述错误的是_。 A.死锁只发生在两个并发执行的事务之间的情况 B.死锁是事务不停地等待永远不可能释放的加锁项而产生的情况 C.采用死锁预防来防止死锁的发生,是一种并不可靠的方法 D.死锁检测会消耗系统资源(分数:2.00)A.B.C.D.27.事务的活锁又称为事务的饥饿,为了避免数据库出现事务活锁,可以采用的措施是_。 A.使用先来先服务策略处理事务请求 B.使用两阶段锁协议 C.对事务进行并发调度 D.使用小粒度锁(分数:2.00)A.B.C.D.28.当多个事务请求对同一数据加锁时,总是使某一用户等待的情况称为_。 A.活锁 B.死锁 C.排他锁 D.
18、共享锁(分数:2.00)A.B.C.D.29.以下关于活锁叙述错误的是_。 A.事务的活锁又称为事务的饿死 B.为避免活锁现象的发生,DBMS 可以采用先来先服务(FIFS)策略处理事务的数据操作请求 C.各个事务可以按照申请访问 Q 的时间先后顺序,依次获得定义在 Q 上的锁 D.DBMS 按事务请求加锁的先后顺序对这些事务排队,先请求的事务排在队列中靠后的位置(分数:2.00)A.B.C.D.二、B填空题/B(总题数:5,分数:10.00)30.在数据库系统出现系统故障后进行恢复时,对于事务 T,如果日志文件中有 BEGINTRANSACTION 记录,而没有 COMMIT 或 ROLLB
19、ACK 记录,则数据库管理系统处理这种事务时应执行的操作是 1。(分数:2.00)填空项 1:_31.在保证数据一致性的加锁协议中, 1 级加锁协议要求事务在读数据项之前必须先对该数据项加共享锁,直到事务结束才释放该锁。(分数:2.00)填空项 1:_32.数据库管理系统中的加锁协议规定了事务的加锁时间、持锁时间和释放锁时间,其中 1 协议可以完全保证并发事务数据的一致性。(分数:2.00)填空项 1:_33.当数据库系统发生死锁时,通常采用的方法是选择一个或几个死锁事务,撤销这些事务,释放这些事务持有的锁,以解决系统的死锁问题。这种机制称为 1。(分数:2.00)填空项 1:_34.两阶段锁
20、协议可以保证并发调度可串行化。在两阶段锁协议中,每个事务的执行过程被划分为_和_两个阶段。(分数:2.00)填空项 1:_三、B设计与应用题/B(总题数:2,分数:12.00)35.考虑定义在事务集(T1,T2,T3)上的调度 S1 和 S2,S1 与 S2 是否是冲突等价的?为什么? (分数:6.00)_36.对下图中的事务 Ti和 Tj,构造一个符合两阶段锁协议、并且冲突等价于串行调度T i;T j的并发调度。 Ti Tjread(C)C:=C+1write(C)read(A)A:=A*2write(A)read(A)A:=A+1write(A)read(B)B:=B+1write(B)(
21、分数:6.00)_事务调度与并发控制答案解析(总分:80.00,做题时间:90 分钟)一、B选择题/B(总题数:29,分数:58.00)1.某系统中事务 T1 从账户 A 转出资金到账户 B 中,在此事务执行过程中,另一事务 T2 要进行所有账户金额统计操作。在 T1 和 T2 事务成功提交后,数据库服务器突然掉电重启。为了保证 T2 事务统计结果及重启后 A,B 两账户金额正确,需利用到的事务性质分别是_。 A.一致性和隔离性 B.隔离性和持久性 C.原子性和一致性 D.原子性和持久性(分数:2.00)A.B. C.D.解析:解析 本题考查的知识点是事务性质。两个事务并发执行时,隔离性保证其
22、并行结果的正确。当事务提交后断电,则持久性保证其对数据库的改变是永久的,结果不受影响。即本题的答案为 B。2.在 SQL Server 2000 中,某数据库中有教师表(教师号,姓名,职称),其中教师号的数据类型是整型,其他均为字符类型。若教师表中当前没有数据,用户在数据库中依次执行下列语句:BEGIN TRANSACTION T1INSERT INTO 教师表 VALUES(1000, 张三, 助教);INSERT INTO 教师表 VALUES(1001, 王二, 助教);COMMIT T1;BEGIN TRANSACTION T2;INSERT INTO 教师表 VALUES(1002,
23、 王三, 讲师);INSERT INTO 教师表 VALUES(1003, 李四, 讲师);COMMIT T2;在执行的时候数据库所在的服务器突然掉电,当数据库系统重新启动后,教师表中包含的数据条数为_。 A.4 条 B.3 条 C.2 条 D.0 条(分数:2.00)A.B.C. D.解析:解析 一个事务由一系列操作组成,事务的执行表现为事务中各个操作的执行,包括对数据库对象的读写操作,此外每个事务还应该具有结束操作。如果事务没有执行提交操作,所有的修改会被撤销。3.事务 T0、T1 和 T2 并发访问数据项 A、B 和 C,下列属于冲突操作的是_。 A.T0 中的 read(A)和 T0
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 事务 调度 并发 控制 答案 解析 DOC
