Implementing Atomicity in Two Systems: Techniques, Tradeoffs, and Experience

  • Authors:
  • L.-F. Cabrera;J. A. McPherson;P. M. Schwarz;J. C. Wyllie

  • Affiliations:
  • -;-;-;-

  • Venue:
  • IEEE Transactions on Software Engineering
  • Year:
  • 1993

Quantified Score

Hi-index 0.01

Visualization

Abstract

This paper presents our experience with implementing atomicity in two systems: the QuickSilver distributed file system and the Starburst relational database manager. Each of these systems guarantees that certain collections of operations done on behalf of their clients execute atomically, despite process, machine, or network failures. In this paper we describe the atomic properties implemented by each system, present the algorithms and mechanisms used, examine the similarities and differences between the two systems, and give the rationale for different design decisions. We demonstrate that the support of atomicity with high performance requires a variety of techniques carefully chosen to balance the amount of data logged, the level of concurrency allowed, and the mutual consistency requirements of sets of objects, The main goal is to help others implement efficient systems that support atomicity.