http://research.microsoft.com/pubs/192621/sigtt611-bernstein.pdf
sigmod'13, 2015/12/12 02:33:36, cited 16
ABSTRACT There has been a resurgence of work on replicated, distributed database systems to meet the demands of intermittently-connected clients and of disaster-tolerant databases that span data centers. Many systems weaken the criteria for replica-consistency or isolation, and in some cases add new mechanisms, to improve partition-tolerance, availability, and performance. We present a framework for comparing these criteria and mechanisms, to help architects navigate through this complex design space.
Ideally, replication is transparent to the clients. This is captured in two well-known correctness criteria: one-copy serializability (1SR) [1] and linearizability [13].
The three basic techniques for synchronizing replicated data are primary copy [1,25], multi-master, and quorum consensus.
Unfortunately, it is hard to encode all application logic such that causal consistency is enough.
good isolation for common scenarios