Data Consistency in Transactional Storage Systems: a Centralised Approach

01/29/2019
by   Shale Xiong, et al.
0

Modern distributed databases weaken data consistency guarantees to allow for faster transaction processing. It poses several challenges: formalising user-observable behaviour; then verifying protocols of databases and reasoning about client applications. We abstract such databases to centralised multi-version key-value stores and client views which provide partial information about such stores. We propose an operational semantics that is parametric in the notion of execution test, which determines if a client with a given view is allowed to commit a transaction. Different execution tests give rise to different consistency models, which are equivalent to the declarative consistency models defined in the literature. Using our semantics, we prove the correctness of distributed protocols and analyse the robustness of simple client applications.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/26/2018

Observable atomic consistency for CvRDTs

The development of distributed systems requires developers to balance th...
research
06/29/2022

Coo: Consistency Check for Transactional Databases

In modern databases, transaction processing technology provides ACID (At...
research
11/29/2021

Verifying Transactional Consistency of MongoDB

MongoDB is a popular general-purpose, document-oriented, distributed NoS...
research
05/28/2019

On mixing eventual and strong consistency: Bayou revisited

In this paper we study the properties of eventually consistent distribut...
research
02/23/2018

IPA: Invariant-preserving Applications for Weakly-consistent Replicated Databases

Storage systems based on Weak Consistency provide better availability an...
research
06/08/2023

Fully Robust Federated Submodel Learning in a Distributed Storage System

We consider the federated submodel learning (FSL) problem in a distribut...
research
12/30/2013

Consistent Bounded-Asynchronous Parameter Servers for Distributed ML

In distributed ML applications, shared parameters are usually replicated...

Please sign up or login with your details

Forgot password? Click here to reset