微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

nosql – 最终的一致性,简单的英语

我经常听到关于Nosql,数据网格等的不同演讲的最终一致性。
看起来最终一致性的定义在许多来源中变化(并且甚至可能取决于具体的数据存储)。

任何人都可以给出一个简单的解释什么最终一致性一般来说,与任何具体的数据存储无关?

最终一致性:

>我告诉你明天会下雨。
>你的邻居告诉他的妻子明天晴天。
>你告诉你的邻居,明天要下雨。

最终,所有的服务器(你,我,你的邻居)知道真相(明天会下雨),但在此期间,客户(他的妻子)走了,以为它会阳光明媚,即使她问在一个服务器知道真相后。

与严格一致性/ ACID合规性相反:

>您的银行余额为$ 50。
>您存入$ 100。
>您的银行余额,从任何地方的任何ATM查询,为$ 150。
>你的女儿用你的ATM卡取40美元。
>您的银行余额,从任何地方的任何ATM查询,是$ 110。

您的余额在任何时候都不会反映您帐户中所有交易的实际金额。

这么多Nosql系统具有最终一致性的原因是,实际上所有的Nosql系统都设计为分布式的,并且对于完全分布式系统,存在超级线性开销以维持严格的一致性(这意味着您只能在事情开始减慢之前进行扩展下来,当他们做你需要抛出更多的硬件的问题,以保持缩放)。

原文地址:https://www.jb51.cc/nosql/203442.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐