US6289422B2

System for multi-volume, write-behind data storage in a distributed processing system

Summary by NHIP

Multi-volume write-behind data storage

The system writes data blocks to magnetic tapes until physical storage ends without predetermined size limits. Switching between tapes remains transparent to the client process even when write-behind operations fail.

Claim Score by NHIP

Read claim 6, the broadest

Abstract

A write-behind enablement approach is presented which allows writing data to multiple volumes of storage media associated with one or more server nodes in a distributed processing environment. A client application on a client node writes blocks of data to a first magnetic tape of a first server node until an end of physical storage of the first magnetic tape is reached, without having predetermined the size of the first magnetic storage. Thereafter, the writing of blocks of data is switched to a second magnetic tape, which may be on the first server node or a second server node in the system. The writing and switching process can repeat a number of times across multiple magnetic tapes. Data is written in a write-behind operation and the switching to a new magnetic tape occurs transparent to the client application, and without loss of data. The client and server nodes are adapted to ascertain how many blocks of data were written to the first storage medium, and the second storage medium, and to allow for the client process to write a header label to the second storage medium prior to writing blocks of data thereto.

US6289422B2, drawing sheet 1
Sheet 1 of 22

Term

Term ended

Expired 21 December 2020, 5.8 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

14 claims: 4 independent, 10 dependent

  1. 1
    A distributed processing system comprising:multiple processors, one processor comprising a client node and one or more other processors each comprising a server node;each server node having at least one storage tape associated therewith;means for writing blocks of data from a client process of said client node to a first storage tape of a first server node of the distributed processing system, wherein said writing continues until a physical end of storage is reached for the first storage tape, said physical end of storage being reached without size of said first storage tape having been predetermined;means for switching writing blocks of data from said client node to a second storage tape of a second server node of the distributed processing system when said physical end of storage is reached for said first storage tape, wherein said means for switching accomplishes said switching writing transparent to said client process of said client node;and wherein said means for writing blocks of data from said client process of the client node to said first storage tape or to said second storage tape comprises means for writing said blocks of data using a write-behind operation which may fail, wherein when occurring said failure is transparent to the client process due to said transparent switching writing from the first storage tape to the second storage tape, and wherein said first server node and said second server node periodically notify the client node whether previously received blocks of data have been correctly written to the first storage tape or the second storage tape, respectively.
  2. 6
    Broadest claimClaim Score 40, average(NHIP)A distributed processing system comprising:multiple processors coupled together, one processor comprising a client node and one or more other processors each comprising a server node;each server node having at least one storage tape associated therewith;said client node writing blocks of data from a client process running thereon to a first storage tape of a first server node of the distributed processing system, said writing continuing until a physical end of storage is reached for the first storage tape, wherein said physical end of storage is reached without size of said first storage tape having been predetermined;said client node and said first server node being adapted to switch writing blocks of data from said first storage tape to a second storage tape of a second server node of the distributed processing system, wherein said switching writing is transparent to said client process of said client node;and wherein said writing blocks of data from said client node to said first storage tape comprises a write-behind operation which may fail, and said first server node periodically notifies the client node whether previously received blocks of data have been correctly written to said first storage tape.
  3. 7
    A distributed processing system comprising:multiple processors coupled together, one processor comprising a client node and one or more other processors each comprising a server node;each server node having at least one storage tape associated therewith;means for writing blocks of data from a client process of the client node to a first storage tape of the at least one storage tape associated with a first server node of the distributed processing system, said writing continuing until a physical end of the first storage tape is reached, wherein said physical end of the first storage tape is reached without having predetermined a size of said first storage tape;means for switching said writing of blocks of data to a second storage tape after reaching said physical end of said first storage tape, said second storage tape comprising one storage tape of said at least one storage tape associated with said first server node or one storage tape of said at least one storage tape associated with a second server node of said distributed processing system;wherein said writing blocks of data to said first storage tape comprises a write-behind operation which may fail, wherein said first server node periodically notifies said client node whether previously received blocks of data have been written correctly to the first storage tape;and means for ascertaining for said client process of said client node how many blocks of data were written to said first storage tape, said means for ascertaining comprising means for determining after said physical end of said first storage tape is reached how many blocks of data were written to said first storage tape.
  4. 11
    A distributed processing system comprising:multiple processors coupled together, one processor comprising a client node and one or more other processors each comprising a server node;each server node having at least one storage tape associated therewith;means for writing blocks of data from a client process of the client node to a first storage tape of the at least one storage tape associated with a first server node of the distributed processing system, wherein said means for writing continues to write said blocks of data to said first storage tape until a physical end of said first storage tape is reached, said physical end of said first storage tape being reached without having predetermined a size of available storage in said first storage tape;means for writing a header label to a second storage tape when said physical end of said first storage tape is reached, wherein said second storage tape comprises one storage tape of said at least one storage tape associated with said first server node or one storage tape of said at least one storage tape associated with a second server node of said distributed processing system;means for switching said writing of blocks of data to said second storage tape when said physical end of said first storage tape is reached;and said means for writing blocks of data to said first storage tape comprising means for writing said blocks of data employing a write-behind operation which may fail, wherein said first server node periodically notifies said client node whether previously received blocks of data have been written correctly to the first storage tape.