加入收藏 | 设为首页 | 会员中心 | 我要投稿 威海站长网 (https://www.0631zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

当数据库遇到分布式,你会怎么做?

发布时间:2020-03-08 16:46:45 所属栏目:MySql教程 来源:站长网
导读:副标题#e# 数据库通常有着完善的事务支持,但是局限于单机的存储和性能,于是就出现了各种分布式解决方案。最近读了《Designing Data-Intensive Applications》这本书,所以做一个总结,供大家做个参考,有什么不对的请大家指正,一起讨论。 数据模型 数据

所有操作都必须相对于每个其他处理器立即或原子执行(立即可见)。

当数据库遇到分布式,你会怎么做?

在时间顺序上,C1发生于B2之后。对于线性一致性来说,C1一定在B2之后,但是对于顺序一致性B2可以发生在C1之后。

顺序一致性可能会产生不确定的结果。这是因为在程序的不同运行期间,处理器之间的顺序操作的顺序可能会有所不同。

对于顺序一致性来说,它要找到一个合法的顺序执行过程,该执行过程要保留线程/进程内部原有的顺序

对于线性一致性来说,它也是要找到一个合法的顺序执行过程。但是这个顺序执行过程,不仅要保留线程/进程内部的先后顺序,还要保留线程/进程之间的操作的先后顺序。

线性一致性可以定义为具有实时约束(real-time constraint)的顺序一致性。

个人理解,在分布式副本的领域中,不太可能找到 除了时序之外,各个进程能够一致认可的顺序。所以在分布式副本领域参考意义不大,更容易造成疑惑。

因果一致性

相对于线性一致性保证读写具有全局顺序,而因果一致性只需要保证具有相互依赖的读写操作保持相同的顺序即可。实际上因果一致性是性能和可用最高的强一致性模型。

(编辑:威海站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读