美文网首页
聊聊ACID

聊聊ACID

作者: 币来币往 | 来源:发表于2019-03-06 11:15 被阅读0次

我们都知道大部分数据库都支持事务操作,而事务操作最引以为傲的的就是ACID(Atomicity, Consistency, Isolation, Durability), 今天我们就来聊聊,它们都指的啥.

  • A(Atomicity)原子性:按名字去理解就是不能再被分割的最小单位。在db操作中通常是值当我们对数据库多次进行写操作的时候,这些写操作要么都成功,要么都失败,不能成功一半失败一半。如果成功一半,那么我们想再次尝试就有可能将成功的部分重复执行多次,操作起来很困难。如果有失败就全部回滚,那么我们重新执行就很方便了。
  • C(Consistency)一致性: 一致性指db一直处于一个“能量守恒”的状态,如转账操作,转出账户扣除了金额,转入账户一定是增加了该金额,不能一边扣了,一边没加。不同应用对一致性的定义可能不同,这也说明了这个一致性其实是一个应用层面的定义,它是通过A和D来保证的。
  • I(Isolation)隔离性: 我们的db可能同时被多个客户端来连接访问,如果我们写了一半的数据被其他客户端看到就不好了,所以隔离性就是保证每个人写一半的数据不会被另外的人看到。
  • D(Durability)持久性: 持久性就是保证只有提交成功了就一定是写成功了。这个是有redo log来保证的,每次写db之前都会先写redo log,然后写db,这样即使写db报错了,我们还是可以通过redo log来重写的。 但其实这也不能完全保证持久性,如果redo log所在的磁盘坏了,那可能就无法恢复了。

相关文章

  • 聊聊ACID

    我们都知道大部分数据库都支持事务操作,而事务操作最引以为傲的的就是ACID(Atomicity, Consiste...

  • [翻译] MySQL 之 InnoDB 中的 ACID

    官方文档:15.2 InnoDB and the ACID Model 一、ACID 介绍 ACID 模型是针对那...

  • ACID

    https://dev.mysql.com/doc/refman/8.0/en/glossary.html#glo...

  • ACID

    ACID,是指数据库管理系统(DBMS)在写入或更新资料的过程中,为保证事务(transaction)是正确可靠的...

  • ACID

    ACID ACID,指数据库事务正确执行的四个基本要素的缩写。包含:原子性(Atomicity)、一致性(Cons...

  • ACID

  • ACID

    数据库事务的四大特性:ACID

  • ACID

    事务具有4个特征,分别是原子性、一致性、隔离性和持久性,简称事务的ACID特性; 一、原子性(atomicity)...

  • ACID

    事务 在说起ACID之前,需要知道什么是事务,事务是一个不可再拆分的最小单位,要么整个执行,要不整个回滚。 什么是...

  • ACID

    https://www.jianshu.com/p/fc8a654f2205[https://www.jiansh...

网友评论

      本文标题:聊聊ACID

      本文链接:https://www.haomeiwen.com/subject/wrftpqtx.html