facebook tao system.
single leader replication.
collaborative editing
https://www.zhihu.com/question/274573543
https://operational-transformation.github.io/index.html
OT, operational transaction
write through cache, read through cache
2 leaders
ddia figure 5-8
ring replication
tungstn
master-master replication
Conflict-free replicated data type
distributed lock -> distributed cache, chubby
读写异步
写异步->写事件流
paxos
multi-paxos
read after write, cascading rollback
write after read, non repeatable read.
https://jepsen.io/consistency
ACID vs BASE
cockroachDB vs spanner
compare and swap
sharding, replica
single leader
multiple leader
leaderless
sync只比async快一点点,从多个replica上读,能够确保一致性。
redis sync replication, use wait timeout,still can’t gurantee strong consistency.
Kafka单个partition其实read和write都在leader
Chandy Lamport algo, 增量snapshot, which is used by flink
WAL, use UPS to keep not down.
snapshot is actually compact for WAL.
zookeeper, need to review, how the CP works.
raft
paxos
consensus, agree on one result
3 roles: proposers, acceptors, learners
single node can take multiple roles, all all of roles.