前面提到了 Single-copy consistency 的例子。本节说的是 Eventual consistency with probabilistic guarantees 和 Eventual consistency with strong guarantees.<br /> Amazon's Dynamo is an eventually, weak consistency guarantees but high availability key-value store. 它使用了 Consistent hashing 来把 keys 映射到不同的节点,使用 partial quorums 来进行复制。<br /> W, R指定需要参与写入或读取的节点数。N是代表数据副本数。 一般来说会推荐 R + W > N.<br /> 在冲突检测和读取修复,我们分别可以从 元数据(metadata), 时间戳(timestamp), 版本号(Version numbers), 矢量时钟(Vector clocks) 来代表数据的历史。<br /> 后面的 PBS / CRDT / the CALM theorem 不太能理解。
目录
## Reconciling different operation orders
## Amazon's Dynamo
### Consistent hashing
### Partial quorums
### Is R + W > N the same as "strong consistency"?
### Conflict detection and read repair
### Replica synchronization: gossip and Merkle trees
### Dynamo in practice: probabilistically bounded staleness (PBS)
## Disorderly programming
## CRDTs: Convergent replicated data types
## The CALM theorem
## What is non-mononicity good for?
## The Bloom language
## Further reading