刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

单选题

在数据库系统中,“事务”是访问数据库并可能更新各种数据项的一个程序执行单元。为了保证数据完整性,要求数据库系统维护事务的原子性、一致性、隔离性和持久性。针对事务的这4种特性,考虑以下的架构设计场景:

假设在某一个时刻只有一个活动的事务,为了保证事务的原子性,对于要执行写操作的数据项,数据库系统在磁盘上维护数据库的一个副本,所有的写操作都在数据库副本上执行,而保持原始数据库不变,如果在任一时刻操作不得不中止,系统仅需要删除副本,原数据库没有受到任何影响。这种设计策略称为( )。

事务的一致性要求在没有其他事务并发执行的情况下,事务的执行应该保证数据库的一致性。数据库系统通常采用( )机制保证单个事务的一致性。

事务的隔离性保证操作并发执行后的系统状态与这些操作以某种次序顺序执行(即可串行化执行)后的状态是等价的。两阶段锁协议是实现隔离性的常见方案,该协议( )。

持久性保证一旦事务完成,该事务对数据库所做的所有更新都是永久的,如果事务完成后系统出现故障,则需要通过恢复机制保证事务的持久性。假设在日志中记录所有对数据库的修改操作,将一个事务的所有写操作延迟到事务提交后才执行,则在日志中( ),当系统发生故障时,如果某个事务已经开始,但没有提交,则该事务应该(请作答此空)。

A
重做
B
撤销
C
什么都不做
D
抛出异常后退出
使用微信搜索喵呜刷题,轻松应对考试!

答案:

C

解析:

第一问,根据题目描述,为了保证事务的原子性,数据库系统在磁盘上维护数据库的一个副本进行写操作,这种设计策略称为“影子拷贝”。
第二问,事务的一致性要求在没有其他事务并发执行的情况下,事务的执行应保证数据库的一致性。数据库系统通常采用完整性约束检查机制来保证单个事务的一致性。
第三问,两阶段锁协议是实现事务隔离性的常见方案。在该协议下,事务不能一次获得所有需要的锁,因此可能会导致死锁。
第四问,基于日志的延迟修改技术中,日志记录所有对数据库的修改操作,并将写操作延迟到事务提交后才执行。日志中需要记录事务开始和提交的时间,以及数据项被修改后的新值。对于未提交的事务,不需要进行任何恢复动作;对于已提交的事务,需要进行重做处理;对于未完成的提交的事务,需要进行撤销处理。因此,在日志中什么都不做是针对未提交的事务的情况。

创作类型:
原创

本文链接:在数据库系统中,“事务”是访问数据库并可能更新各种数据项的一个程序执行单元。为了保证数据完整性,要求

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share