Skip to main content
QUICK REVIEW

[Paper Review] Global Stabilization for Causally Consistent Partial Replication

Zhuolun Xiang, Nitin H. Vaidya|arXiv (Cornell University)|Mar 15, 2018
Distributed systems and fault tolerance12 references3 citations
TL;DR

This paper proposes a global stabilization technique for causally consistent partial replication in distributed key-value stores, enabling clients to access any server and migrate freely while maintaining causality. It proves optimality of the Global Stable Time (GST) computation in minimizing remote update visibility latency under general partial replication.

ABSTRACT

Causally consistent distributed storage systems have received significant attention recently due to the potential for providing high throughput and causality guarantees. {\em Global stabilization} is a technique established for achieving causal consistency in distributed multi-version key-value store systems, adopted by the previous work such as GentleRain \cite{Du2014GentleRainCA} and Cure \cite{akkoorath2016cure}. Intuitively, this approach serializes all updates by their physical time and computes the ``Global Stable Time'' which is a time point $t$ such that versions with timestamp $\leq t$ can be returned to the client without violating causality. However, all previous designs with global stabilization assume {\em full replication}, where each data center stores a full copy of data, and each client is restricted to access servers within one data center. In this paper, we propose a theoretical framework to support {\em general partial replication} with causal consistency via global stabilization, where each server can store an arbitrary subset of the data, and each client is allowed to communicate with any subset of the servers and migrate among them without extra delays. We propose an algorithm that implements causal consistency for distributed multi-version key-value stores with general partially replication. We prove the optimality of the Global Stable Time computation in our algorithm regarding the remote update visibility latency, i.e. how fast update from a remote server is visible to the client, under general partial replication. We also provide trade-offs to further optimize the remote update visibility by introducing extra delays during client's migration. Simulation results on the performance of our algorithm compared to the previous work are also provided.

Motivation & Objective

  • Address the lack of causal consistency support in partially replicated distributed storage systems, where servers store arbitrary subsets of data.
  • Enable clients to communicate with any subset of servers and migrate between them without incurring extra delays or violating causality.
  • Extend the global stabilization technique—previously limited to full replication—to general partial replication.
  • Prove the optimality of the Global Stable Time (GST) computation in minimizing remote update visibility latency.
  • Provide practical optimizations, including introducing controlled delays during client migration to further reduce latency.

Proposed method

  • Use physical timestamps to serialize all updates in a total order across servers, leveraging FIFO communication channels for monotonic timestamp reception.
  • Define the Global Stable Time (GST) as the latest timestamp such that all updates with timestamp ≤ GST are guaranteed to be received by a server.
  • Compute GST at each server based on the maximum timestamp received from other servers, ensuring causality by excluding any pending or missing updates.
  • Allow clients to read from any server and migrate freely, using GST to determine which versions are causally consistent.
  • Introduce a mechanism to maintain non-decreasing GST during system dynamics (e.g., server or key additions/removals), ensuring consistency.
  • Optimize performance by introducing controlled delays during client migration to reduce remote update visibility latency.

Experimental results

Research questions

  • RQ1Can global stabilization be extended to support general partial replication, where each server stores an arbitrary subset of data?
  • RQ2What is the optimal remote update visibility latency achievable under general partial replication with causal consistency?
  • RQ3How can causal consistency be preserved when clients migrate between servers in a partially replicated system?
  • RQ4What trade-offs exist between latency and consistency when introducing controlled delays during client migration?
  • RQ5How does the proposed GST computation compare in performance to prior work like GentleRain under partial replication?

Key findings

  • The proposed GST computation is optimal in minimizing remote update visibility latency under general partial replication, as proven in the paper.
  • The algorithm supports arbitrary partial replication, where each server stores any subset of keys, and clients can access any server without extra coordination.
  • The metadata size is constant, independent of the number of servers, clients, or keys—unlike prior approaches that require superlinear metadata.
  • Simulation results show that the proposed GST computation outperforms GentleRain in terms of remote update visibility latency under partial replication.
  • Introducing controlled delays during client migration can further reduce remote update visibility latency, offering a tunable trade-off between latency and consistency.
  • The algorithm maintains causal consistency during system dynamics (e.g., server or key changes) by ensuring GST is non-decreasing during transitions.

Better researchstarts right now

From reading papers to final review, dramatically reduce your research time.

No credit card · Free plan available

This review was created by AI and reviewed by human editors.