Anticipation of Method Execution in Mixed Consistency Systems – Technical Report

12/30/2022
by   Marco Giunti, et al.
0

Distributed applications often deal with data with different consistency requirements: while a post in a social network only requires weak consistency, the user balance in turn has strong correctness requirements, demanding mutations to be synchronised. To deal efficiently with sequences of operations on different replicas of the distributed application, it is useful to know which operations commute with others and thus, when can an operation not requiring synchronisation be anticipated wrt other requiring it, thus avoiding unnecessary waits. Herein we present a language-based static analysis to extract at compile-time from code information on which operations can commute with which other operations and thus get information that can be used by the run-time support to decide on call anticipations of operations in replicas without compromising consistency. We illustrate the formal analysis on several paradigmatic examples and briefly present a proof-of-concept implementation in Java.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/23/2018

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

Storage systems based on Weak Consistency provide better availability an...
research
07/17/2018

Improving the "Correct Eventual Consistency" Tool

Preserving invariants while designing distributed applications under wea...
research
11/14/2022

On Consistency for Bulk-Bitwise Processing-in-Memory

Processing-in-memory (PIM) architectures allow software to explicitly in...
research
07/01/2019

On consistency types for lattice-based distributed programming languages

Distributed systems address an increasing demand for fast access to reso...
research
03/19/2022

An Efficient Approach to Move Elements in a Distributed Geo-Replicated Tree

Replicated tree data structures are extensively used in collaborative ap...
research
07/04/2023

SpComp: A Sparsity Structure-Specific Compilation of Matrix Operations

Sparse matrix operations involve a large number of zero operands which m...
research
10/25/2017

Why You Can't Beat Blockchains: Consistency and High Availability in Distributed Systems

We study the issue of data consistency in highly-available distributed s...

Please sign up or login with your details

Forgot password? Click here to reset