Cornus: One-Phase Commit for Cloud Databases with Storage Disaggregation

02/19/2021
by   Zhihan Guo, et al.
0

Two-phase commit (2PC) has been widely used in distributed databases to ensure atomicity for distributed transactions. However, 2PC suffers from two limitations. First, 2PC incurs long latency as it requires two logging operations on the critical path. Second, when a coordinator fails, a participant may be blocked waiting for the coordinator's decision, leading to indefinitely long latency and low throughput. We make a key observation that modern cloud databases feature a storage disaggregation architecture, which allows a transaction's final decision to not rely on the central coordinator. We propose Cornus, a one-phase commit (1PC) protocol specifically designed for this architecture. Cornus can solve the two problems mentioned above by leveraging the fact that all compute nodes are able to access and modify the log data on any storage node. We present Cornus in detail, formally prove its correctness, develop certain optimization techniques, and evaluate against 2PC on YCSB and TPC-C workloads. The results show that Cornus can achieve 1.5x speedup in latency.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
02/24/2023

Knock Out 2PC with Practicality Intact: a High-performance and General Distributed Transaction Protocol (Technical Report)

Two-phase-commit (2PC) has been widely adopted for distributed transacti...
research
07/28/2020

Efficient Cross-Shard Transaction Execution in Sharded Blockchains

Sharding is a promising blockchain scaling solution. But it currently su...
research
01/14/2020

Coded Data Rebalancing: Fundamental Limits and Constructions

Distributed databases often suffer unequal distribution of data among st...
research
09/15/2021

Evaluation of Distributed Databases in Hybrid Clouds and Edge Computing: Energy, Bandwidth, and Storage Consumption

A benchmark study of modern distributed databases is an important source...
research
06/25/2020

Fast General Distributed Transactions with Opacity using Global Time

Transactions can simplify distributed applications by hiding data distri...
research
02/09/2023

FLAC: A Robust Failure-Aware Atomic Commit Protocol for Distributed Transactions

In distributed transaction processing, atomic commit protocol (ACP) is u...
research
09/04/2023

Objcache: An Elastic Filesystem over External Persistent Storage for Container Clusters

Container virtualization enables emerging AI workloads such as model ser...

Please sign up or login with your details

Forgot password? Click here to reset