THE SWIFT/RAID DISTRIBUTED TRANSACTION DRIVER

  • Authors:
  • Bruce R. Montague

  • Affiliations:
  • -

  • Venue:
  • THE SWIFT/RAID DISTRIBUTED TRANSACTION DRIVER
  • Year:
  • 1993

Quantified Score

Hi-index 0.00

Visualization

Abstract

This document describes a distributed transaction driver developed to support the reimplementation of Swift with added RAID (Redundant Arrays of Inexpensive Disks) functionality. Both a high-level overview and a low-level program description are provided. The Swift system was developed to investigate the use of disk striping to achieve high I/O performance. The transaction driver described here has been used to implement RAID-0, RAID-4, and RAID-5 Swift systems. Swift uses a network of workstations in a manner similar to a redundant disk array, i.e., an application on a client node requests I/O via library routines which evenly distribute I/O across multiple server nodes. Data blocks in RAID files are distributed over the servers. RAID-0 contains no redundancy/parity information, RAID-4 uses a dedicated parity node, and RAID-5 uses distributed parity. The original Swift system used a straight-forward RAID-0 scheme that did not readily scale to RAID-4 and RAID-5 implementations. The transaction driver described here was developed to cope with the distributed concurrent programming problems posed by these implementations. In principle, this transaction driver can be used for a wide variety of distributed concurrent programming problems.