mirror of
https://github.com/DistSysCorp/ddia.git
synced 2024-12-25 20:30:39 +08:00
commit
8882e88e90
4
ch05.md
4
ch05.md
@ -592,7 +592,7 @@ LWW 有一个问题,就是多个并发写入的客户端,可能都认为自
|
|||||||
|
|
||||||
使用 LWW 唯一安全的方法是:key 是一次可写,后变为只读。如 Cassandra 建议使用一个 UUID 作为主键,则每个写操作都只会有一个唯一的键。
|
使用 LWW 唯一安全的方法是:key 是一次可写,后变为只读。如 Cassandra 建议使用一个 UUID 作为主键,则每个写操作都只会有一个唯一的键。
|
||||||
|
|
||||||
### 发生于**之前(Happens-before)和并发关系
|
### 发生于之前(Happens-before)和并发关系
|
||||||
|
|
||||||
考虑之前的两个图:
|
考虑之前的两个图:
|
||||||
|
|
||||||
@ -669,4 +669,4 @@ key1: [Va, Vb, Vc]
|
|||||||
x <= x1 && y <= y1 && z <= z1
|
x <= x1 && y <= y1 && z <= z1
|
||||||
```
|
```
|
||||||
|
|
||||||
每个副本在遇到写入时,会增加对应键的版本号,同时跟踪从其他副本中看到的版本号,通过比较版本号大小,来决定哪些值要覆盖哪些值要保留。
|
每个副本在遇到写入时,会增加对应键的版本号,同时跟踪从其他副本中看到的版本号,通过比较版本号大小,来决定哪些值要覆盖哪些值要保留。
|
||||||
|
Loading…
Reference in New Issue
Block a user