题库系统集成项目管理工程师

系统集成项目管理工程师 · 第三版 · 第2章 信息技术发展

事务中途失败整体撤销、提交后保留,分别对应什么特性?

44 道章节练习题
单选题2.1 信息技术及其发展12 / 44

在同一数据库事务中,扣减库存后创建订单失败,要求撤销本事务的全部修改;事务成功提交后,修改结果不因随后的进程崩溃而丢失。两项要求分别体现()。

选择答案
未作答
答案与解析

正确答案 B

两句话分处提交前后。前一句要求这组修改不能只留下半套结果,体现原子性;后一句要求已经成功提交的结果能够保留,体现持久性。因此选B,不必把所有“数据正确”都归入一致性。

题目特意限定“同一数据库事务”。若扣库存和创建订单分别在两个服务里独立提交,就不能仅凭这里的本地事务结论保证它们一起撤销。持久性也不等于不需要备份:已提交数据的恢复机制与整套存储介质毁坏后的灾难恢复,不是一个层面的保障。

选项分析

A
一致性关注约束能否维持,隔离性关注并发事务间的影响;都没有准确对应本题的整体撤销与提交后保留。
B
原子性对应事务修改全成或全撤,持久性对应成功提交后的结果保留,抓住了两项要求各自的关键。
C
把提交前的全有或全无与提交后的保存保证颠倒。持久性不负责把失败事务整体撤销。
D
题干没有用并发读取来考隔离性;第二句则明确强调提交后崩溃不丢失,应对应持久性。

容易混淆的地方

凭“库存和订单要一致”选一致性,忽略题目实际描述的是失败时的整体撤销机制。判断ACID要认具体行为,而不只认业务目标。

再巩固一步

  • 在题干中标出“失败”和“已提交”:全成或全撤看原子性,已提交结果保留看持久性,并发相互影响才转向隔离性。
原创章节练习题 · 第三版 · 《系统集成项目管理工程师教程》第3版 · 2.1.3 · 纸书第63页

练习小结

题目纠错

未发送。正式接收渠道尚未接通。

查看纠错信息