Concurrency versus availability: atomicity mechanisms for replicated data

  • Authors:
  • Maurice Herlihy

  • Affiliations:
  • Carnegie-Mellon Univ., Pittsburgh, PA

  • Venue:
  • ACM Transactions on Computer Systems (TOCS)
  • Year:
  • 1987

Quantified Score

Hi-index 0.00

Visualization

Abstract

A replicated object is a typed data object that is stored redundantly at multiple locations to enhance availability. Most techniques for managing replicated data have a two-level structure: At the higher level, a replica-control protocol reconstructs the object's state from its distributed components, and at the lower level, a standard concurrency-control protocol synchronizes accesses to the individual components. This paper explores an alternative approach to managing replicated data by presenting two replication methods in which concurrency control and replica management are handled by a single integrated protocol. These integrated protocols permit more concurrency than independent protocols, and they allow availability and concurrency to be traded off: Constraints on concurrency may be relaxed if constraints on availability are tightened, and vice versa. In general, constraints on concurrency and availability cannot be minimized simultaneously.