Alexiang's Page

Back

概述#

ACID 原则#

ACID 是指数据库事务的四个属性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)。

  • Atomicity(原子性):一个事务是一个不可分割的工作单位,事务中包括的诸操作要么全部成功,要么全部失败。
  • Consistency(一致性):数据库的状态从一个一致的状态变为另一个一致的状态。
  • Isolation(隔离性):一个事务的执行不能被其他事务干扰。
  • Durability(持久性):一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。

CAP 定理#

在分布式系统中,不可能同时满足一致性(Consistency),可用性(Availability)和分区容错性(Partition tolerance),最多只能同时做到两个。

  • Consistency(一致性):在分布式系统中的所有数据备份,在同一时刻是否同样的值。
  • Availability(可用性):在集群中任意节点故障时,仍然可以提供服务。
  • Partition tolerance(分区容错性):分布式系统在遇到网络分区故障时,仍然能够继续运行。

BASE 理论#

BASE 理论是对 CAP 理论的一种扩展,是 NoSQL 数据库通常选择的理论。

  • Basically Available(基本可用):不保证一致性,但保证可用性。
  • Soft state(软状态):允许系统中的数据存在中间状态,并不保证数据的强一致性。
  • Eventually consistent(最终一致性):系统中的数据经过一段时间的同步后,最终达到一致的状态。

典型问题#

  • 幂等性(Idempotence)某个操作可以执行多次,但执行的效果与执行一次是相同的。
  • 互斥性(Mutual Exclusion)主要涉及在多个进程或线程并发执行时,对于共享资源的访问控制。互斥性确保在同一时刻只有一个进程能够访问共享资源,从而避免由于并发操作而导致的数据不一致或资源冲突。
数据库系统
https://alexiangyu.github.io/blog/%E6%95%B0%E6%8D%AE%E5%BA%93%E7%B3%BB%E7%BB%9F
Author Alexiang
Published at 2024年11月17日
Comment seems to stuck. Try to refresh?✨