事务ACID四大特性(图文详解)
创作时间:
作者:
@小白创作中心
事务ACID四大特性(图文详解)
引用
CSDN
1.
https://blog.csdn.net/weixin_48935611/article/details/140414362
ACID
ACID 是数据库管理系统中保证事务正确执行的四大特性的缩写。
1. Atomicity(原子性)
- 原子性指事务是不可分割的单位,要么全部执行成功,要么全部失败回滚。—
All or nothing. - 通常使用日志记录机制来启动回滚功能。
- 在事务执行过程中,如果发生错误,系统会撤销事务已经执行的操作,使数据回滚到事务开始前的状态,保证数据的一致性。
2. Consistency(一致性)
- 一致性指事务将系统从一个一致性状态转换到另一个一致性状态。
- 在事务开始前和事务结束后,数据库的完整性约束没有被破坏,数据的约束依然有效。
- 事务执行的过程中,数据库始终保持一致性状态。
- 例如,账户余额不可以是负数,一致性可以防止无效数据弄乱数据库。
3. Isolation(隔离性)
- 隔离性指数据库允许多个并发事务同时对其数据进行读写,并且事务之间是相互隔离的,一个事务的执行不应影响其他事务的执行。
数据库系统中的隔离级别是指多个事务并发执行时,一个事务对数据的读写操作受到其他事务影响程度的程度。
隔离级别越高,事务之间的相互影响越小,但也可能会导致系统性能下降。
1. 读未提交(Read Uncommitted)
- 定义:最低的隔离级别。一个事务可以读取另一个事务未提交的数据修改。
- 问题:可能会导致脏读(Dirty Read),即一个事务读取到了另一个未提交事务的数据,但该事务最终可能会回滚,导致读取到的数据是无效的。
2. 读已提交(Read Committed)
- 定义:一个事务只能读取到另一个事务已经提交的数据。
- 解决的问题:避免了脏读,但仍可能导致不可重复读和幻读问题。
- 不可重复读示例:一个事务内的两次读取操作返回的结果不一致,通常是由于其他事务修改了数据造成的
同一个事务中多次读取同样的数据时,其值保持发生了改变。即两次读取期间,其他事务对数据进行了修改,该事务在同一事务内的多次读取结果不一致。
- 幻读示例:
一个事务内两次查询返回的记录数不一致,通常是由于其他事务插入了新数据或删除了数据造成的。
3. 可重复读(Repeatable Read)
- 定义:确保在同一个事务中多次读取同样的数据时,其值保持不变。即使其他事务对数据进行了修改,该事务在同一事务内的多次读取结果也不会改变。
- 解决的问题:避免了不可重复读,但仍可能出现幻读问题。
4. 序列化(Serializable)
- 定义:最高的隔离级别,通过强制事务串行执行来避免并发问题。保证了所有并发事务的执行效果与串行执行的效果相同,从而避免了脏读、不可重复读和幻读的问题。
- 解决的问题:提供最高的数据一致性和完整性,但可能会导致性能下降,因为事务必须严格按照顺序执行。
选择隔离级别的考虑因素:
- 数据一致性要求:如果应用对数据一致性要求极高,应选择较高的隔离级别,如可重复读或串行化。
- 并发性能需求:如果并发性能是关键,可以选择较低的隔离级别,如读已提交或读未提交,但需要考虑并发带来的数据一致性问题。
4. Durability(持久性)
- 持久性指一旦事务提交,其所做的修改会永久保存在数据库中,并不会因系统故障导致数据的丢失。
- 通常通过将事务的操作持久化到非易失性存储介质(如硬盘)来实现,保证即使系统崩溃,事务提交的数据也不会丢失。
- 分布式节点持久化:
一言以蔽之:原子性——回滚失败事务,一致性——遵循规则,隔离性——防止干扰,持久性——数据永久保存。
热门推荐
法甜技巧:关于巧克力调温你想知道的都在这里
水体富营养化知识全解:水华与赤潮的危害与防治
中度高血压有什么症状有哪些
完整的办公家具购买指南
NBA全明星 | 扣篮大赛两连霸麦克朗又来了
数据溯源计划:提高AI训练数据集的透明度与负责任使用
逃避心理:如何勇敢面对而非逃?
新加坡身份证明文件大揭秘:一文了解新加坡身份证的申领和使用
物联网设备固件更新与安全策略
揭秘“左眼跳财,右眼跳灾”:眼睑痉挛的真相与预防
泰森亲述:最聪明的对手不是霍利菲尔德,而是这位老拳王
什么是股票跟买成功率?提高股票跟买成功率的方法有哪些?
大学学校统一交医保吗
皮蛋虽美味,但这四类人要少吃!
幸福树怎么养活(幸福树养护和注意事项)
韦德哈登谁更强? 三个总冠军横扫一切?
中国“超级工程”——上海中心大厦设计全解析
年味贵州丨一锅热辣的酸汤鱼,贵州人的红火年味
郴州旅游攻略:自然奇观与人文风情的完美融合
不同磨削过程中的砂轮使用技巧
如何合理处理退保需求?这种需求背后有哪些原因?
三位立体数字人怎么做的
如何为保健医疗设备设计选择合适的电池
千万别用这7种杯子装开水,小心热水变“毒水”,家里有的赶紧扔
长江流域内的主要稻作文化遗存有哪些?
烘干机自清洁是黑科技还是智商税?三年实测揭开真相
“重要的”只会用important?15个形容“重要”的表达
美国登月到底是真是假?为何长达50年不再登上月球,到底是啥真相?
龟兔赛跑是悖论吗?世界著名的逻辑悖论
如何为创业公司设定SMART目标:指南