Formalising and Optimising Parallel Snapshot Isolation
Alexey Gotsman
IMDEA
19 Dec 2014, 1:00 pm
Kaiserslautern building G26, room 111
SWS Colloquium
Modern Internet services often achieve dependability by relying on
geo-replicated databases that provide consistency models for transactions
weaker than serialisability. We investigate a promising consistency model of
Sovran et al.'s parallel snapshot isolation (PSI), which weakens the classical
snapshot isolation in a way that allows more efficient geo-replicated
implementations. We first give a declarative specification to PSI that does not
refer to implementation-level concepts and, thus, allows application
programmers to reason about the behaviour of PSI databases more easily. ...
Modern Internet services often achieve dependability by relying on
geo-replicated databases that provide consistency models for transactions
weaker than serialisability. We investigate a promising consistency model of
Sovran et al.'s parallel snapshot isolation (PSI), which weakens the classical
snapshot isolation in a way that allows more efficient geo-replicated
implementations. We first give a declarative specification to PSI that does not
refer to implementation-level concepts and, thus, allows application
programmers to reason about the behaviour of PSI databases more easily. We
justify our high-level specification by proving its equivalence to the existing
low-level one. Using our specification,
we develop a criterion for checking when a set of transactions executing on PSI
can be chopped into smaller pieces without introducing new behaviours. This
allows application programmers to optimise the code of their transactions to
execute them more efficiently. We find that our criterion is more permissive
than the existing one for chopping serialisable transactions. These results
contribute to understanding the complex design space of consistency models for
geo-replicated databases.This is joint work with Andrea Cerone (IMDEA) and
Hongseok Yang (Oxford).
Read more