Maintaining Consistency in Distributed Systems

Abstract

The emerging generation of database systems and general purpose operating systems share many characteristics: object orientation, a stress on distribution, and the utilization of concurrency to increase performance. A consequence is that both types of systems are confronted with the problem of maintaining the consistency of multi component distributed applications in the face of concurrency and failures. Moreover, large applications can be expected to combine database and general purpose components. This paper discusses four basic approaches to the distributed consistency problem as it arises in such hybrid applications. The organization of the paper is as follows. We begin by reviewing the database dat and execution models and presenting the transactional approach to concurrency control and failure atomicity. We then turn to distributed systems, focusing on aspects related to synchronization and fault tolerance and introducing virtually synchronous process groups. The last part of the paper focuses on an object oriented view of distributed systems, and suggests that the linearizability model of Herlihy and Wing might be used to link the virtual synchrony approach with transactions and internal synchronization mechanisms such as monitors, arriving at a flexible, general approach to concurrency control of systems built of typed objects.

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Nov 01, 1991
Accession Number
ADA243512

Entities

People

  • Ken Birman

Organizations

  • Cornell University

Tags

DTIC Thesaurus Topics

  • Abstracts
  • Algorithms
  • Application Software
  • Communication Systems
  • Computer Networks
  • Computer Programming
  • Computer Programs
  • Computer Science
  • Computers
  • Consistency
  • Control Systems
  • Failure Mode And Effect Analysis
  • Fault Tolerance
  • Object Oriented Programming
  • Operating Systems
  • Standards
  • Systems Engineering

Fields of Study

  • Computer science

Readers

  • Database Systems and Applications
  • Parallel and Distributed Computing.
  • Systems Analysis and Design