US5257362A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method and means for ensuring single pass small read/write access to variable length records stored on selected DASDs in a DASD array
Assignee: International Business Machines Corp
•
Filing: 1991-03-08
•
Granted: 1993-10-26
•
Expires: 2011-03-08
Abstract
Abstract Write update of variable length records stored in row major order on an array of N DASDs is facilitated by utilizing the correlation between byte offsets of a variable length record and the byte offset of a byte level parity image of data stored on the same track across N-1 other DASDs.
Inventors
- 👤 Jaishankar M. Menon
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-31 20:06
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/08; G06F11/10; G06F11/1076; G06F11/1008; G06F3/00; G06F3/06; G06F3/0601; G11; G11B; G11B20/00; G11B20/10; G11B20/18; G11B20/1833; G06F3/0668; G06F3/0671; G06F3/0673
Claims Analysis
Total Claims: 8
Claim 1
Independent Claim
301 words
In a system comprising an array of N DASDs for storing records in row major order on counterpart tracks of N-1 of said DASDs and for storing a parity image of the counterpart tracks on the Nth DASD of said array, and a control unit responsive to externally supplied read or write requests for accessing records on said array, a method for write updating selected ones among a set of variable length records sorted on DASD tracks, each record including at least a count field and a variable length data field, the fields within a record and between records on each DASD track being spaced apart by a predetermined track extent termed a "gap", any arbitrarily addressable DASD track being denominated as an "ith track", comprising the steps by said control unit of: (a) generating a byte level exclusive OR simple parity image of the fields and gaps included within each of the variable length records from each counterpart ith track across N-1 DASDs, and, storing said image on an ith track of the Nth DASD, each gap being coded as an arbitrary constant value (000); and (b) responsive to each write request to a record stored on a selected DASD, (1) establishing a byte position offset of the record to be modified on the ith track of the selected DASD and the record identify within the parity image on the ith track of the Nth DASD, (2) obtaining and modifying said record from the ith track of the selected DASD and parity from the ith track of the Nth DASD, said parity being modified as the exclusive OR image of the old record, the record modification, and the old parity; and (3) rewriting said modified record and parity back to the ith track on the selected and Nth DASDs respectively.
Claim 2
Dependent Claim
301 words
In a system comprising an array of N DASDs for storing records in row major order on counterpart tracks of N-1 of said DASDs and for storing a parity image of the counterpart tracks on the Nth DASD of said array, and a control unit responsive to externally supplied read or write requests for accessing records on said array, a method for write updating selected ones among a set of variable length records sorted on DASD tracks, each record including at least a count field and a variable length data field, the fields within a record and between records on each DASD track being spaced apart by a predetermined track extent termed a "gap", any arbitrarily addressable DASD track being denominated as an "ith track", comprising the steps by said control unit of: (a) generating a byte level exclusive OR simple parity image of the fields and gaps included within each of the variable length records from each counterpart ith track across N-1 DASDs, and, storing said image on an ith track of the Nth DASD, each gap being coded as an arbitrary constant value (000); and (b) responsive to each write request to a record stored on a selected DASD, (1) establishing a byte position offset of the record to be modified on the ith track of the selected DASD and the record identify within the parity image on the ith track of the Nth DASD, (2) obtaining and modifying said record from the ith track of the selected DASD and parity from the ith track of the Nth DASD, said parity being modified as the exclusive OR image of the old record, the record modification, and the old parity; and (3) rewriting said modified record and parity back to the ith track on the selected and Nth DASDs respectively.
Claim 3
Dependent Claim
155 words
The method according to claim 1, wherein step (a) further includes the steps of generating r byte level simple parity images in one-to-one relation to r groups of variable length records stored in counterpart tracks, each group of the r groups of records having a simple parity image stored on an ith track of a first DASD and variable length records on the ith tracks of (N-1) other counterpart DASDs; and storing each generated byte level simple parity image such that: (1) for r greater than N, each DASD stores at least one simple parity image track and at least one DASD stores two simple parity image tracks; and (2) for r less than or equal to N, no two simple parity images formed from two dissimilar groups of variable length records are stored on the same DASD, each group being stored on respective ith and jth tracks of combinatorially distinctive groups of N-1 DASDs.
Claim 4
Dependent Claim
145 words
The method according to claim 1, wherein said control unit further includes means for ascertaining a failed array DASD, and a plurality of full track buffers, and in the event one of the array DASD fails, said method further comprises the step of (c) recreating the variable length records stored on the ith track of any failed DASD by: (1) copying the variable length records from each of the N-1 non-failed DASDs into N-1 of the plurality of full track buffers in said control unit in which the relative position of each gap separated field is preserved by a predetermined Boolean value string inserted there between, thus retaining field alignment among tracks; and (2) forming an image of the records on the ith track of the failed DASD and their track position relationship by byte level XOR'ING the contents of the N-1 full track buffers.
Claim 5
Dependent Claim
41 words
The method according to claim 1, wherein step (a) still further includes the steps of blocking and storing a simple parity image (FIG. 6, DASDs N & N+1) over two tracks on the Nth DASD so as to minimize track latency.
Claim 6
Dependent Claim
338 words
In a system comprising an array of N DASDs for storing records in row major order on counterpart tracks of N-1 of said DASDs and for storing a parity image of the counterpart tracks on the Nth DASD of said array, and a control unit responsive to externally supplied read or write requests for accessing records designated in said requests, a method for ensuring single pass access to a selected ones of the DASDs especially suited for small track read and write access of variable length records, each record including at least a count field and a variable length data field, the fields within a record and between records on each DASD track being spaced apart by a predetermined track extent termed a "gap", any arbitrarily addressable DASD track being denominated as the "ith track", comprising the steps by said control unit of: (a) creating a virtual image as a byte organized result of an exclusive OR operation upon counterpart bytes on the counterpart tracks across N-1 DASDs, and mapping the virtual image into at least one variable length formatted record on the Nth DASD, said counterpart bytes on the counterpart tracks include the fields and gaps within each of the variable length records, each gap being coded as an arbitrary constant value (000); and (b) responsive to a write request on accessing a record on the ith track on a selected on of the N-1 DASDs, (1) ascertaining the byte offset of the record to be updated on the ith track of the selected DASD and the record identify and byte offsets within the parity image on the ith track of the Nth DASD; (1) obtaining and modifying said record from the ith track of the selected DASD and the parity from ith track of the Nth DASD, said parity being modified as the exclusive OR image of the old record, the record modification, and the old parity; and (3) rewriting said modified record and parity back to ith track on the Nth and selected DASD respectively.
Claim 7
Dependent Claim
338 words
In a system comprising an array of N DASDs for storing records in row major order on counterpart tracks of N-1 of said DASDs and for storing a parity image of the counterpart tracks on the Nth DASD of said array, and a control unit responsive to externally supplied read or write requests for accessing records designated in said requests, a method for ensuring single pass access to a selected ones of the DASDs especially suited for small track read and write access of variable length records, each record including at least a count field and a variable length data field, the fields within a record and between records on each DASD track being spaced apart by a predetermined track extent termed a "gap", any arbitrarily addressable DASD track being denominated as the "ith track", comprising the steps by said control unit of: (a) creating a virtual image as a byte organized result of an exclusive OR operation upon counterpart bytes on the counterpart tracks across N-1 DASDs, and mapping the virtual image into at least one variable length formatted record on the Nth DASD, said counterpart bytes on the counterpart tracks include the fields and gaps within each of the variable length records, each gap being coded as an arbitrary constant value (000); and (b) responsive to a write request on accessing a record on the ith track on a selected on of the N-1 DASDs, (1) ascertaining the byte offset of the record to be updated on the ith track of the selected DASD and the record identify and byte offsets within the parity image on the ith track of the Nth DASD; (1) obtaining and modifying said record from the ith track of the selected DASD and the parity from ith track of the Nth DASD, said parity being modified as the exclusive OR image of the old record, the record modification, and the old parity; and (3) rewriting said modified record and parity back to ith track on the Nth and selected DASD respectively.
Claim 8
Dependent Claim
144 words
The method according to claim 5, wherein said control unit further including means for ascertaining a failed array DASD, and a plurality of full track buffers, and wherein said method further comprises the step of: (c) in the event one of the array DASD fails, recreating the variable length records stored on the ith track of the failed DASD by: (1) copying the variable length records form each of the surviving N-1 DASDs into N-1 of the plurality of full track buffers in said control unit in which the relative position of each gap separated field is preserved by a predetermined Boolean value string inserted there between, thus retaining field alignment among tracks; and (2) forming an image of the records on the ith track of teh failed DASD and their track position relationship by XOR'ING the contents of the N-1 full track buffers.
References Cited (Backward Citations)
US4849978A
Cited
US4914656A
Cited
US5077736A
Cited
US5140592A
Cited
US5134619A
Cited
US5124987A
Cited
US5210866A
Cited
US5155835A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 1996-10-25 | 1997-04-26 | 1997-10-26 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2000-10-25 | 2001-04-26 | 2001-10-26 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2004-10-25 | 2005-04-26 | 2005-10-26 | $7700.00 | Window Closed / Lapsed |