首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ACID和CAP定理的一致性,它们是一样的吗?

ACID和CAP定理的一致性,它们是一样的吗?
EN

Database Administration用户
提问于 2013-01-01 02:44:47
回答 3查看 20K关注 0票数 27

据我理解,ACID的一致性确保了数据的完整性。

然而,CAP的一致性意味着数据在分布式系统中可以快速出现。

这是否意味着:它们不是同一个概念?

EN

回答 3

Database Administration用户

回答已采纳

发布于 2013-01-01 02:52:45

由于数据的范围,它们并不完全相同。

  • 原子性
  • 一致性:所有应用数据更改都为所有DB连接提供了一致的数据视图
  • 隔离
  • 耐久性

帽子

  • 一致性 (通过最终的一致性,所有节点都拥有相同的数据)
  • 可用性
  • 允许分区:系统继续运行,尽管系统的部分部分出现了任意的消息丢失或故障。

简要说明

  • ACID解决单个节点的数据一致性问题
  • CAP地址集群范围内的数据一致性。
票数 24
EN

Database Administration用户

发布于 2015-05-04 16:07:35

盖定理:指定分布式系统可以提供两个服务(例如。(可用性和分区容忍度),但绝不是三。例如,如果一个服务提供可用性和分区,它永远无法确保一致性,而不是立即,因此最终使用了一致性,从而允许基础结构在不一致性和一致性之间流动,但在某一时刻,基础结构迟早会变得一致,最终导致一致性。云服务以这种方式工作,Amazon的简单DB使用最终的一致性。

特性通常应用于关系数据库。如果您想以分布式方式(分布式DB)应用ACID,ACID使用2PC(两阶段提交)来强制分区之间的一致性。但是,由于ACID提供了一致性和分区,因此将CAP定理应用于(分布式环境)将意味着可用性受到损害。

因此,使用基本(基本可用,软状态,最终是一致的)可以提供无法用ACID获得的可伸缩性级别。

希望这能有所帮助。

票数 4
EN

Database Administration用户

发布于 2018-03-23 15:53:28

关于CAP定理的一致性,Julian在他的文章(http://www.julianbrowne.com/article/brewers-cap-theorem)中写道:

一致的服务完全或根本不运行。Gilbert和Lynch在他们的证明中使用了“原子”这个词,而不是一致的,这在技术上更有意义,因为严格地说,C是一致的,因为它适用于数据库事务的理想属性,并且意味着数据永远不会被保存,从而打破某些预先设定的约束。但是,如果您认为这是分布式系统的一种预先设定的约束,即不允许为同一条数据设置多个值,那么我认为抽象中的漏洞是被堵塞的(另外,如果Brewer使用了原子一词,它将被称为AAP定理,而且每次我们试图宣布它时,我们都会住院)。

因此,

中的C对应于酸中的A。

关于吉尔伯特和林奇,他提到了一篇文章赛斯·吉尔伯特和南希·林奇:布鲁尔的猜想和一致、可用、允许分区的服务的可行性

票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/31260

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档