原子性(Atomic):一个事务中的操作要么全部成功,要么全部失败,没有中间状态。
- 在出错时中止事务,并将部分完成的写入全部丢弃。《数据密集型应用系统设计》P214
一致性(Consistency):在事务执行前后,数据库的一致性约束没有被破坏。
- 假设用户 A 和用户 B 两者的钱加起来一共是 5000,那么不管 A 和 B 之间转账了几次,事务结束后两个用户的钱加起来还得是 5000
隔离性(Isolation):事务的执行应该与其他并发执行的事务相互隔离,每个事务都感觉不到其他事务的存在。
持久性(Durability):一旦事务提交,其对数据库的修改应该是永久性的,即使在系统故障的情况下也不应丢失。
Reference