Tango: distributed data structures over a shared log

  • Authors:
  • Mahesh Balakrishnan;Dahlia Malkhi;Ted Wobber;Ming Wu;Vijayan Prabhakaran;Michael Wei;John D. Davis;Sriram Rao;Tao Zou;Aviad Zuck

  • Affiliations:
  • Microsoft Research Silicon Valley;Microsoft Research Silicon Valley;Microsoft Research Silicon Valley;Microsoft Research Asia;Microsoft Research Silicon Valley;University of California, San Diego;Microsoft Research Silicon Valley;Microsoft;Cornell University;Tel-Aviv University

  • Venue:
  • Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles
  • Year:
  • 2013

Quantified Score

Hi-index 0.00

Visualization

Abstract

Distributed systems are easier to build than ever with the emergence of new, data-centric abstractions for storing and computing over massive datasets. However, similar abstractions do not exist for storing and accessing meta-data. To fill this gap, Tango provides developers with the abstraction of a replicated, in-memory data structure (such as a map or a tree) backed by a shared log. Tango objects are easy to build and use, replicating state via simple append and read operations on the shared log instead of complex distributed protocols; in the process, they obtain properties such as linearizability, persistence and high availability from the shared log. Tango also leverages the shared log to enable fast transactions across different objects, allowing applications to partition state across machines and scale to the limits of the underlying log without sacrificing consistency.