scispace - formally typeset
Open AccessJournal ArticleDOI

Hamsaz: replication coordination analysis and synthesis

Reads0
Chats0
TLDR
This work presents novel coordination protocols that are parametric in terms of the analysis results and provide the well-coordination requirements and implemented a tool called Hamsaz that can automatically analyze the given object, instantiate the protocols and synthesize replicated objects.
Abstract
Distributed system replication is widely used as a means of fault-tolerance and scalability. However, it provides a spectrum of consistency choices that impose a dilemma for clients between correctness, responsiveness and availability. Given a sequential object and its integrity properties, we automatically synthesize a replicated object that guarantees state integrity and convergence and avoids unnecessary coordination. Our approach is based on a novel sufficient condition for integrity and convergence called well-coordination that requires certain orders between conflicting and dependent operations. We statically analyze the given sequential object to decide its conflicting and dependent methods and use this information to avoid coordination. We present novel coordination protocols that are parametric in terms of the analysis results and provide the well-coordination requirements. We implemented a tool called Hamsaz that can automatically analyze the given object, instantiate the protocols and synthesize replicated objects. We have applied Hamsaz to a suite of use-cases and synthesized replicated objects that are significantly more responsive than the strongly consistent baseline.

read more

Citations
More filters
Book ChapterDOI

Comparing Causal Convergence Consistency Models

TL;DR: In this article , the authors explore several variations of causal consistency (CC) that guarantee state convergence among replicas, meaning that all distributed replicas converge towards the same consistent state, and provide sufficient conditions for a given application program to be robust against one CC model versus another, where the program has the same behavior when executed over databases implementing the two CC models.
Proceedings ArticleDOI

Programming Support for Local-First Software: Enabling the Design of Privacy-Preserving Distributed Software without Relying on the Cloud

Julian Haas
TL;DR: In this article , the authors propose a programming model for local-first software, which facilitates the construction of local first software and eradicates certain classes of safety and security problems by design.
Journal ArticleDOI

Collabs: Composable Collaborative Data Structures

TL;DR: Collab as mentioned in this paper is an open-source 1 TypeScript library for modular and composable RDTs that allows programmers to work at a higher level of abstraction, instead of just a fixed menu of generic RDT.
References
More filters
Book ChapterDOI

Time, clocks, and the ordering of events in a distributed system

TL;DR: In this paper, the concept of one event happening before another in a distributed system is examined, and a distributed algorithm is given for synchronizing a system of logical clocks which can be used to totally order the events.
Journal ArticleDOI

Time, clocks, and the ordering of events in a distributed system

TL;DR: In this article, the concept of one event happening before another in a distributed system is examined, and a distributed algorithm is given for synchronizing a system of logical clocks which can be used to totally order the events.
Journal ArticleDOI

Impossibility of distributed consensus with one faulty process

TL;DR: In this paper, it is shown that every protocol for this problem has the possibility of nontermination, even with only one faulty process.
Proceedings ArticleDOI

Dynamo: amazon's highly available key-value store

TL;DR: D Dynamo is presented, a highly available key-value storage system that some of Amazon's core services use to provide an "always-on" experience and makes extensive use of object versioning and application-assisted conflict resolution in a manner that provides a novel interface for developers to use.
Journal ArticleDOI

The part-time parliament

TL;DR: The Paxon parliament's protocol provides a new way of implementing the state machine approach to the design of distributed systems.
Related Papers (5)