We present a summary of non-transactional consistency levels in the context of distributed data replication protocols. The levels are built upon a practical object pool model and are defined in a unified framework centered around the concept of ordering. We show that each consistency level can be intuitively defined by specifying two types of constraints that determine the validity of orderings allowed by the level: convergence, which bounds the lineage shape of the ordering, and relationship, which bounds the relative positions of operations in the ordering. We give examples of representative protocols and systems that implement each consistency level. Furthermore, we discuss the availability upper bound of presented consistency levels.
View on arXiv