1、数据库系统工程师-事务调度与并发控制及答案解析(总分:30.00,做题时间:90 分钟)一、试题 1(总题数:1,分数:15.00)说明Z省省会城市火车售票系统负责 XX火车站各班次火车的票务销售,并在该省会城市设有多个该火车票销售网点,各售票网点使用相同的售票程序。假设售票程序中用到的伪指令如表 6-14所示。(分数:15.00)_二、试题 2(总题数:1,分数:15.00)说明事务(Transaction)是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位。它是数据恢复和并发控制的基本单位。1. 对表 6-15中的事务 Ti和 Tj,构造一个符合两阶段锁
2、协议,并且冲突等价于串行调度T i;Tj的并发调度。(分数:15.00)_数据库系统工程师-事务调度与并发控制答案解析(总分:30.00,做题时间:90 分钟)一、试题 1(总题数:1,分数:15.00)说明Z省省会城市火车售票系统负责 XX火车站各班次火车的票务销售,并在该省会城市设有多个该火车票销售网点,各售票网点使用相同的售票程序。假设售票程序中用到的伪指令如表 6-14所示。(分数:15.00)_正确答案:(调度 A结果:17调度 B结果:12调度 C结果:15调度 A、C 结果错误,因为破坏了事务的隔离性。一个事务的执行结果被另一个所覆盖)解析:_正确答案:(1)重写后的售票程序伪指
3、令序列Xlock(A);RR(A,x-n;W(A,x-n);Unlock(A);(2) 封锁粒度与系统的并发度和并发控制的开销密切相关封锁的粒度越大,并发度就越小,但系统开销就越小封锁的粒度越小,并发度就越高,但系统开销就越大)解析:_正确答案:(1)SERIALIZABLE(2) ROLLBACK WORK(3) WHERE flight =A(4) COMMIT WORK)解析:二、试题 2(总题数:1,分数:15.00)说明事务(Transaction)是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位。它是数据恢复和并发控制的基本单位。1. 对表 6
4、-15中的事务 Ti和 Tj,构造一个符合两阶段锁协议,并且冲突等价于串行调度T i;Tj的并发调度。(分数:15.00)_正确答案:(示例如表 6-19所示)解析:_正确答案:(不是等价冲突的因为无法通过交换 S1中的冲突操作,使 T1、T 2和 T3对 P、Q 的并发访问次序与 S2保持一致或例如,在 S2中,T 1先于 T2对 Q进行写操作,而在 S1中,T 1中的 write(Q)晚于 T2中的 write(Q),且这两个操作相互冲突,无法交换执行顺序)解析:_正确答案:(并发性访问与全部或部分数据备份方式无关,而与备份时所采用的数据存储方式有关。如果采用的是静态转储(冷备份),则不允许用户并发性访问;如果采用的是动态转储(热备份),则允许用户并发性访问)解析: