Table of Contents
Fetching ...

A framework to reason about consistency and atomicity guarantees in a sparsely-connected, partially-replicated peer-to-peer system

Sreeja S. Nair, Nicholas E. Marino, Nick Pascucci, Russell Brown, Arthur P. R. Silva, Tim Cummings, Connor M. Power

TL;DR

This work presents \textsc{IntersectionAtomicity} and \textsc{IntersectionCC} as models to reason about offline-first collaborative applications that are sparsely-connected and rely on partially replicating different subsets of a broader set of data, and proposed guidelines to help developers design their application with atomicity and consistency guarantees.

Abstract

For an offline-first collaborative application to operate in true peer-to-peer fashion, its collaborative features must function even in environments where internet connectivity is limited or unavailable. Each peer may only be interested in a subset of the application data relevant to its workload, and this subset can overlap in different ways with those of other peers. Limitations imposed by access control and mesh network technologies often result in peers being sparsely connected. Reasoning about consistency in these systems is hard, especially when considering transactional updates that may alter different sets of data in the same transaction. We present \textsc{IntersectionAtomicity} and \textsc{IntersectionCC} as models to reason about offline-first collaborative applications that are sparsely-connected and rely on partially replicating different subsets of a broader set of data. We then use these models to propose a set of guidelines to help developers design their application with atomicity and consistency guarantees.

A framework to reason about consistency and atomicity guarantees in a sparsely-connected, partially-replicated peer-to-peer system

TL;DR

This work presents \textsc{IntersectionAtomicity} and \textsc{IntersectionCC} as models to reason about offline-first collaborative applications that are sparsely-connected and rely on partially replicating different subsets of a broader set of data, and proposed guidelines to help developers design their application with atomicity and consistency guarantees.

Abstract

For an offline-first collaborative application to operate in true peer-to-peer fashion, its collaborative features must function even in environments where internet connectivity is limited or unavailable. Each peer may only be interested in a subset of the application data relevant to its workload, and this subset can overlap in different ways with those of other peers. Limitations imposed by access control and mesh network technologies often result in peers being sparsely connected. Reasoning about consistency in these systems is hard, especially when considering transactional updates that may alter different sets of data in the same transaction. We present \textsc{IntersectionAtomicity} and \textsc{IntersectionCC} as models to reason about offline-first collaborative applications that are sparsely-connected and rely on partially replicating different subsets of a broader set of data. We then use these models to propose a set of guidelines to help developers design their application with atomicity and consistency guarantees.
Paper Structure (10 sections, 5 equations, 1 figure, 1 table)

This paper contains 10 sections, 5 equations, 1 figure, 1 table.

Figures (1)

  • Figure 1: A peer network graph consisting of multiple components, where interest sets are satisfied, yet network partitions still exist. A peer is represented by a rectangle. Connections between peers are indicated with arrows. Different shapes represent different interest sets.