# PaRiS: Causally Consistent Transactions with Non-blocking Reads and   Partial Replication

**Authors:** Kristina Spirovska, Diego Didona, Willy Zwaenepoel

arXiv: 1902.09327 · 2019-02-26

## TL;DR

PaRiS introduces a causally consistent, partially replicated geo-distributed transaction system with non-blocking reads, leveraging a novel dependency tracking protocol to improve scalability and performance in large-scale deployments.

## Contribution

It is the first TCC system supporting partial replication with non-blocking reads, using a lightweight dependency tracking protocol called UST for scalability and efficiency.

## Key findings

- Scales well with the number of data centers and partitions.
- Achieves up to 1.47x higher throughput and 5.91x lower latency for read workloads.
- Handles larger datasets than full replication solutions.

## Abstract

Geo-replicated data platforms are at the backbone of several large-scale online services. Transactional Causal Consistency (TCC) is an attractive consistency level for building such platforms. TCC avoids many anomalies of eventual consistency, eschews the synchronization costs of strong consistency, and supports interactive read-write transactions. Partial replication is another attractive design choice for building geo-replicated platforms, as it increases the storage capacity and reduces update propagation costs. This paper presents PaRiS, the first TCC system that supports partial replication and implements non-blocking parallel read operations, whose latency is paramount for the performance of read-intensive applications. PaRiS relies on a novel protocol to track dependencies, called Universal Stable Time (UST). By means of a lightweight background gossip process, UST identifies a snapshot of the data that has been installed by every DC in the system. Hence, transactions can consistently read from such a snapshot on any server in any replication site without having to block. Moreover, PaRiS requires only one timestamp to track dependencies and define transactional snapshots, thereby achieving resource efficiency and scalability. We evaluate PaRiS on a large-scale AWS deployment composed of up to 10 replication sites. We show that PaRiS scales well with the number of DCs and partitions, while being able to handle larger data-sets than existing solutions that assume full replication. We also demonstrate a performance gain of non-blocking reads vs. a blocking alternative (up to 1.47x higher throughput with 5.91x lower latency for read-dominated workloads and up to 1.46x higher throughput with 20.56x lower latency for write-heavy workloads).

## Full text

_Full body text omitted from this summary view._ Fetch the complete paper as Markdown: https://tomesphere.com/paper/1902.09327/full.md

## Figures

10 figures with captions in the complete paper: https://tomesphere.com/paper/1902.09327/full.md

## References

48 references — full list in the complete paper: https://tomesphere.com/paper/1902.09327/full.md

---
Source: https://tomesphere.com/paper/1902.09327