Dynamically Scalable, Fault-Tolerant Coordination on a Shared Logging Service

Michael Wei, Mahesh Balakrishnan, John D. Davis, Dahlia Malkhi, Vijayan Prabhakaran, and Ted Wobber

Abstract

Coordination services provide the means for distributed applications to share resources. Many coordination services provide a hierarchical namespace with strongly consistent semantics that applications utilize to build basic primitives such as locks and queues.

In this paper, we explore a fresh approach which uses a shared log as a flexible, raw substrate for implementing coordination primitives. We show that we can reduce an existing coordination service, ZooKeeper, to use a shared log, and show that a shared log offers benefits such as high performance and dynamic reconfigurability. Our design comprises several desirable properties that were recently introduced as enhancements to ZooKeeper, such as reconfiguration and client scale-out.

Details

Publication typeTechReport
NumberMSR-TR-2013-40
PublisherMicrosoft Research
> Publications > Dynamically Scalable, Fault-Tolerant Coordination on a Shared Logging Service