关于数据库几个重要的概念,ACID,CAP等

RDBMS关系型数据库遵循ACID规则
  • A(Atomicity)原子性
    事务里的所有操作要么全部完成,要么都不做,事务成功的条件是事务里的所有操作都成功,只要有一个操作失败,整个事务就失败,需要回滚。

  • C (Consistency)一致性
    即数据库要一直处于一致的状态,事务的运行不会改变数据库原本的一致性约束。
    例如:现有完整性约束a+b=10,如果一个事务改变了a,那么必须得改变b,使得事务结束后依然满足a+b=10,否则事务失败。

  • I (Isolation)独立性
    指并发的事务之间不会互相影响,如果一个事务要访问的数据正在被另外一个事务修改,只要一个事务未提交,它所访问的数据就不受未提交事务的影响

  • D (Durability)持久性
    指一旦事务提交后,它所做的修改将会永久的保存在数据库上,即使出现宕机也不会丢失。

NoSQL

是对不同于传统的关系型数据库的数据库管理系统的统称,NoSQL用于超大规模数据的存储

CAP定理

CAP定理,又被称作布鲁尔定理。它指出对于一个分布式计算系统来说,不可能同时满足以下三点:

  • 一致性(Consistency) :所有节点在同一时间具有相同的数据

  • 可用性(Availability):保证每个请求不管成功或者失败都有相应

  • 分隔容忍(Partition tolerance):系统中任意信息的丢失或失败不会影响系统的继续运作

CAP理论的核心:一个分布式系统不可能同时很好地满足一致性,可用性和分区容错性这三个需求,最多只能同时较好地满足两个。

因此,根据 CAP 原理将 NoSQL 数据库分成了满足 CA 原则、满足 CP 原则和满足 AP 原则三 大类:

  • CA - 单点集群,满足一致性,可用性的系统,通常在可扩展性上不太强大。
  • CP - 满足一致性,分区容忍性的系统,通常性能不是特别高。
  • AP - 满足可用性,分区容忍性的系统,通常可能对一致性要求低一些。

CAP.png

BASE

BASE是NoSQL数据库通常对可用性及一致性的弱要求原则:

  • Basically Availble:基本可用
  • Soft-state: 软状态、柔性事务。“Soft state”可以理解为“无连接”的,而“Hard state”是“面向连接”的
  • Eventual Consistency: 最终一致性,也是ACID的最终目的

NoSQL 数据库分类

NoSQL.png

摘自NoSQL 简介

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容