CAP理论概述

CAP理论指出在分布式系统中,一致性、可用性和分区容错性不能同时满足。传统的ACID数据库保证强一致性,但牺牲了部分可用性。NoSQL数据库通常选择CA或CP,如Redis保证CP,牺牲部分可用性。而大多数网站架构倾向于AP,如MongoDB,允许数据最终一致性。BASE理论则主张在分布式环境中,采用基本可用、软状态和最终一致性来达到系统设计目标。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、CAP理论:

传统的ACID分别是什么?

事务在当今的企业系统无处不在,即使在高并发环境下也可以提供数据的完整性。一个事务是一个只包含所有读/写操作成功的集合 ,一句话就是多条SQL语句,要么所有执行成功,要么所有执行失败。

在数据库系统中,事务作为最小的逻辑处理单元,是原子的、不可再分的, 它一般包含若干个数据库操作。为了更好地理解事务的概念,我们用银行转帐这一经典的例子来阐述,它的功能由两个数据操作完成:先从汇款方账户扣除一定的金额,然后向收款方账户增加相应的金额,这两个步骤是作为一个完整的逻辑过程执行的,从而可以使整个系统的总金额不变。ACID 作为事务的重要特性,最早于 1992 年在ISO 的国际标准化文件中提出,四个特性的表述如下:

原子性(Atomicity)

原子性是指事务是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生,即通常所说的全部或者全都不(all-or-nothing)原则。

一致性(Consistency)

事务前后数据的完整性必须保持一致,即事务是一段从某个数据库一致性状态映射到另一个一致性状态的程序。

隔离性(Isolation)

事务的隔离性是多个用户并发访问数据库时,数据库为每一个用户开启的事务,不能被其他事务的操作数据所干扰,多个并发事务之间要相互隔离,即一个正在执行的事务在它提交之前其处理结果不能对其他并发事务可见。

持久性(Durability)

持久性是指一个事务一旦被提交,它对数据库中数据的改变就是永久性的,接下来即使数据库发生故障也不应该对其有任何影响,即在数据库中永久性地保存事务的处理结果,不会

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wespten

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值