数据库的强一致性和弱一致性

Posted 一梦三十载

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库的强一致性和弱一致性相关的知识,希望对你有一定的参考价值。

强一致性可以理解为在任意时刻,所有节点中的数据是一样的。同一时间点,你在节点A中获取到key1的值与在节点B中获取到key1的值应该都是一样的
弱一致性 (相当于异步)系统并不保证续进程或者线程的访问都会返回最新的更新过的值。系统在数据写入成功之后,不承诺立即可以读到最新写入的值,也不会具体的承诺多久之后可以读到。
一致性弱意味着对某个值修改后,可能后续还会读出来旧值。
所谓最终一致性,就是不保证在任意时刻任意节点上的同一份数据都是相同的,但是随着时间的迁移,不同节点上的同一份数据总是在向趋同的方向变化。也可以简单的理解为在一段时间后,节点间的数据会最终达到一致状态。

CAP原理有关:C指一致性,A指可用性,P指分区容错性,任何分布式系统都无法满足CAP中的三项

以上是关于数据库的强一致性和弱一致性的主要内容,如果未能解决你的问题,请参考以下文章

基于MySQL和DynamoDB的强一致性分布式事务实践

Java进阶知识点6:并发容器背后的设计理念 - 锁分段写时复制和弱一致性

浅谈C语言中的强符号弱符号强引用和弱引用

如何保障微服务架构下的数据一致性

解决分布式一致性问题的基础理论

Java中的强引用和弱引用