Consolidating concurrency control and consensus for commits under conflicts

Shuai Mu, Lamont Nelson, Wyatt Lloyd, Jinyang Li

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Conventional fault-tolerant distributed transactions layer a traditional concurrency control protocol on top of the Paxos consensus protocol. This approach provides scalability, availability, and strong consistency. When used for wide-area storage, however, this approach incurs cross-data-center coordination twice, in serial: once for concurrency control, and then once for consensus. In this paper, we make the key observation that the coordination required for concurrency control and consensus is highly similar. Specifically, each tries to ensure the serialization graph of transactions is acyclic. We exploit this insight in the design of Janus, a unified concurrency control and consensus protocol. Janus targets one-shot transactions written as stored procedures, a common, but restricted, class of transactions. Like MDCC [16] and TAPIR [51], Janus can commit unconflicted transactions in this class in one round-trip. Unlike MDCC and TAPIR, Janus avoids aborts due to contention: it commits conflicted transactions in this class in at most two round-trips as long as the network is well behaved and a majority of each server replica is alive. We compare Janus with layered designs and TAPIR under a variety of workloads in this class. Our evaluation shows that Janus achieves ∼5× the throughput of a layered system and 90% of the throughput of TAPIR under a contention-free microbenchmark. When the workloads become contended, Janus provides much lower latency and higher throughput (up to 6.8×) than the baselines.

Original languageEnglish (US)
Title of host publicationProceedings of the 12th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2016
PublisherUSENIX Association
Pages517-532
Number of pages16
ISBN (Electronic)9781931971331
StatePublished - Jan 1 2016
Event12th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2016 - Savannah, United States
Duration: Nov 2 2016Nov 4 2016

Publication series

NameProceedings of the 12th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2016

Conference

Conference12th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2016
CountryUnited States
CitySavannah
Period11/2/1611/4/16

ASJC Scopus subject areas

  • Information Systems
  • Computer Networks and Communications
  • Hardware and Architecture

Fingerprint Dive into the research topics of 'Consolidating concurrency control and consensus for commits under conflicts'. Together they form a unique fingerprint.

  • Cite this

    Mu, S., Nelson, L., Lloyd, W., & Li, J. (2016). Consolidating concurrency control and consensus for commits under conflicts. In Proceedings of the 12th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2016 (pp. 517-532). (Proceedings of the 12th USENIX Symposium on Operating Systems Design and Implementation, OSDI 2016). USENIX Association.