Skip to main content

NoSQL

数据库类型

键值数据库

Redis、SimpleDB

列式数据库

HBase、BigTable

文档数据库

MongoDB、CouchDB

图数据库

Neo4J、GraphDB

三大基石

CAP

C:一致性,表示总是能够在读取之前读到写操作之后的结果。也就是每次都读取到最近的数据。

A:可用性,表示能够快速获得数据,在确定的时候返回数据。

P:分区容忍性,表示出现因为网络导致部分节点无法通信时,系统也能正常运行。

CAP只能满足其中两个!

image-20211108215451575

该分布式系统采用AP设计原则,

当网络发生故障时M1中的消息无法发送到M2,此时进程P2在节点M2读取的副本V2的值仍然是旧值val0,产生了不一致问题,不满足一致性理论(C)

P1和P2都能迅速到达V1和V2获取自己想要的数据,满足可用性理论(A)

即使V1节点发生故障,V2节点仍然能发挥作用,满足了分区容忍性理论(P)

最终一致性

顾名思义,最终一致性时指经过一段时间之后,服务端和客户端都能访问到更新之后的数据就可以了,不管中间的过程,只要求一段时间之内数据是正确的。

分类:因果一致性、“读己之所写”一致性、会话一致性、单调读一致性、单调写一致性。