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.