Regular Sequential Serializability and Regular Sequential Consistency
release_4z3hwfiwvfefhbbgcgkln7wkla
by
Jeffrey Helt, Matthew Burke, Amit Levy, Wyatt Lloyd
2021
Abstract
Strictly serializable (linearizable) services appear to execute transactions
(operations) sequentially, in an order consistent with real time. This
restricts a transaction's (operation's) possible return values and in turn,
simplifies application programming. In exchange, strictly serializable
(linearizable) services perform worse than those with weaker consistency.
Switching to such services, however, can break applications.
This work introduces two new consistency models to ease this trade-off:
regular sequential serializability (RSS) and regular sequential consistency
(RSC). They are just as "strong" for applications; we prove any application
invariant that holds when using a strictly serializable (linearizable) service
also holds when using an RSS (RSC) service. Yet they are "weaker" for services;
they allow new, better-performing designs. To demonstrate this, we design,
implement, and evaluate variants of two systems, Spanner and Gryff, weakening
their consistency to RSS and RSC, respectively. The new variants achieve better
read-only transaction and read tail latency than their counterparts.
In text/plain
format
Archived Content
There are no accessible files associated with this release. You could check other releases for this work for an accessible version.
Know of a fulltext copy of on the public web? Submit a URL and we will archive it
2109.08930v1
access all versions, variants, and formats of this works (eg, pre-prints)