[分布式系统] Quorum机制

Quorum机制是为了保证分布式系统中的数据一致性。

强一致性:任意时刻从不同副本取出的值是相同的。

弱一致性:由于网络延迟和设备异常等原因,从不同副本拿到的值可能不同,但是一段时间后会相同。

1.WARO协议

为了达到强一致性的效果,Write All Read One是最好的办法,即写入数据时,仅当所有副本完成更新后才认为此次操作成功。其优点在于简单,缺点在于可用性差。

2.Quorum机制

假设有N个副本,更新操作write_i在W个副本中成功后,即认为此次更新操作成功。在去读取数据时,需要至少读取R个副本,并且W+R>N(一般W+R=N+1),也就是说确保更新的副本和读取的副本有重合。

在读取时,若R个副本中的数据不一致,那么可以根据版本号确定哪一个数据是最新的。

3.应用

HDFS HA和Zookeeper中均使用了Quorum机制。

posted @ 2022-02-27 16:47  Cheung-10  阅读(10)  评论(0)    收藏  举报