← Back to Patent Explorer
US5875457A Expired / Lapsed US ⏱️ 0.0 years remaining

Fault-tolerant preservation of data integrity during dynamic raid set expansion

Assignee: Seagate Systems UK Ltd
•
Filing: 1996-10-08
•
Granted: 1999-02-23
•
Expires: 2016-10-08
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for dynamically expanding an N drive RAID set to an M drive RAID set while maintaining data integrity, where the M drive RAID set includes one or more new drives. The method comprises the steps of identifying a destructive zone in the N drive RAID set including destructive zone data. Thereafter the destructive zone data is mirrored in the M drive RAID set by copying it to a free location in the N drive RAID set and to a location in a new drive in the M drive RAID set. Finally, the N drive RAID set is expanded to an M drive RAID set. Data integrity is assured in the N drive RAID set during migration by maintaining mirrored destructive zone data until the expansion step has completed migration of the destructive zone of the N drive RAID set.

Inventors

  • 👤 Amir Shalit

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-08 01:14
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/14; G06F11/1402; G06F11/1415; G06F11/1435; G06F11/08; G06F11/10; G06F11/1076; G06F11/1096; G06F3/00; G06F3/06; G06F3/0601; G06F3/0602; G06F3/0614; G06F3/0619; G06F3/0628; G06F3/0629; G06F3/0632; G06F3/0668; G06F3/0671; G06F3/0683; G06F3/0689

Claims Analysis

Total Claims: 26
Claim 1
Independent Claim 162 words
A method of dynamically expanding an N drive RAID set to an M drive RAID set while maintaining data integrity, the M drive RAID set including one or more new drives, the method comprising the steps of: identifying a destructive zone in the N drive RAID set, including destructive zone data wherein the destructive zone includes a plurality of data stripes in the N drive RAID set; mirroring the destructive zone data by copying it to a free location in the N drive RAID set and to a location in a new drive in the M drive RAID set; expanding the N drive RAID set to an M drive RAID set including dynamically reorganizing and packing segments within a stripe, whereby data integrity is assured in the N drive RAID set during migration to an M drive RAID set by maintaining mirrored destructive zone data until the expansion step has completed migration of the destructive zone of the N drive RAID set.
Claim 2
Independent Claim 162 words
A method of dynamically expanding an N drive RAID set to an M drive RAID set while maintaining data integrity, the M drive RAID set including one or more new drives, the method comprising the steps of: identifying a destructive zone in the N drive RAID set, including destructive zone data wherein the destructive zone includes a plurality of data stripes in the N drive RAID set; mirroring the destructive zone data by copying it to a free location in the N drive RAID set and to a location in a new drive in the M drive RAID set; expanding the N drive RAID set to an M drive RAID set including dynamically reorganizing and packing segments within a stripe, whereby data integrity is assured in the N drive RAID set during migration to an M drive RAID set by maintaining mirrored destructive zone data until the expansion step has completed migration of the destructive zone of the N drive RAID set.
Claim 3
Dependent Claim 76 words
The method of claim 1 further including the steps of if a free location in the N drive RAID set is not available, identifying a last arm zone of one drive in the N drive RAID set; copying data from the last arm zone to a new drive in the M drive RAID set; copying data from the destructive zone to the last arm zone and to a new drive in the M drive RAID set.
Claim 4
Dependent Claim 24 words
The method of claim 2 where the data from the last arm zone is copied to a same relative position in the new drive.
Claim 5
Dependent Claim 28 words
The method of claim 3 wherein the destructive zone data is copied to a location just above the data from the last arm zone in the new drive.
Claim 6
Dependent Claim 51 words
The method of claim 1 wherein the destructive zone is a predetermined number of stripes, and the predetermined number of stripes is calculated according to the formula: Stripes in Destructive Zone=N*M, where N=number of drives in the N drive RAID set, where M=number of drives in the M drive RAID set.
Claim 7
Dependent Claim 39 words
The method of claim 5 wherein the number of stripes in the destructive zone is calculated according to the formula: Stripes in the Destructive Zone=(N-1)*(M-1), if data in the N drive RAID set includes parity data or reconstruction data.
Claim 8
Dependent Claim 36 words
The method of claim 5 wherein the number of stripes in the destructive zone is calculated according to the formula: Stripes in the Destructive Zone=(N/2)*(M/2), if the N drive RAID set is a mirrored RAID set.
Claim 9
Independent Claim 195 words
A method of dynamically expanding an N drive RAID set to an M drive RAID set while maintaining data integrity comprising the steps of: identifying a destructive zone in the N drive RAID set, the destructive zone having a first size including a plurality of data stripes in the N drive RAID set; identifying a last arm zone of the first size in one drive in the N drive RAID set, where the last arm zone is not part of the destructive zone; copying data from the last arm zone to a new drive in the M drive RAID set; copying data from the destructive zone to the last arm zone and to the new drive in the M drive RAID set; expanding the N drive RAID set to an M drive RAID set including dynamically reorganizing and packing segments within a stripe, whereby data integrity is maintained in the N drive RAID set during migration to an M drive RAID set by maintaining mirrored destructive zone data located in the last arm zone and the new drive until the expanding step has completed processing of the destructive zone of the N drive RAID set.
Claim 10
Independent Claim 195 words
A method of dynamically expanding an N drive RAID set to an M drive RAID set while maintaining data integrity comprising the steps of: identifying a destructive zone in the N drive RAID set, the destructive zone having a first size including a plurality of data stripes in the N drive RAID set; identifying a last arm zone of the first size in one drive in the N drive RAID set, where the last arm zone is not part of the destructive zone; copying data from the last arm zone to a new drive in the M drive RAID set; copying data from the destructive zone to the last arm zone and to the new drive in the M drive RAID set; expanding the N drive RAID set to an M drive RAID set including dynamically reorganizing and packing segments within a stripe, whereby data integrity is maintained in the N drive RAID set during migration to an M drive RAID set by maintaining mirrored destructive zone data located in the last arm zone and the new drive until the expanding step has completed processing of the destructive zone of the N drive RAID set.
Claim 11
Dependent Claim 51 words
The method of claim 8 wherein the destructive zone is a predetermined number of stripes, and the predetermined number of stripes is calculated according to the formula: Stripes in Destructive Zone=N*M, where N=number of drives in the N drive RAID set, where M=number of drives in the M drive RAID set.
Claim 12
Dependent Claim 38 words
The method of claim 9 wherein the number of stripes in the destructive zone is calculated according to the formula: Stripes in Destructive Zone=(N-1)*(M-1), if data in the N drive RAID set includes parity data or reconstruction data.
Claim 13
Dependent Claim 36 words
The method of claim 9 wherein the number of stripes in the destructive zone is calculated according to the formula: Stripes in the Destructive Zone=(N/2)*(M/2), if the N drive RAID set is a mirrored RAID set.
Claim 14
Independent Claim 232 words
A method of dynamically expanding an N drive RAID set to an M drive RAID set while maintaining data integrity, the M drive RAID set including one or more new drives, the method comprising the steps of: identifying a destructive zone in the N drive RAID set including destructive zone data, wherein the destructive zone includes a plurality of data stripes in the N drive RAID set; mirroring the destructive zone data by copying it to a free location in the N drive RAID set and to a location in a new drive in the M drive RAID set; dynamically expanding the N drive RAID set to an M drive RAID set including the steps of: migrating the destructive zone data across the M drive RAID set including dynamically reorganizing and packing segments within a stripe, releasing the destructive zone mirrored data stored in the free location of the N drive RAID set and stored in the new drive upon completion of the destructive zone data migration to the M drive RAID set, and migrating a remainder of the N drive RAID set data across the M drive RAID set, whereby data integrity is maintained in the N drive RAID set during migration to an M drive RAID set by maintaining mirrored destructive zone data until the expanding step has completed processing of the destructive zone of the N drive RAID set.
Claim 15
Independent Claim 232 words
A method of dynamically expanding an N drive RAID set to an M drive RAID set while maintaining data integrity, the M drive RAID set including one or more new drives, the method comprising the steps of: identifying a destructive zone in the N drive RAID set including destructive zone data, wherein the destructive zone includes a plurality of data stripes in the N drive RAID set; mirroring the destructive zone data by copying it to a free location in the N drive RAID set and to a location in a new drive in the M drive RAID set; dynamically expanding the N drive RAID set to an M drive RAID set including the steps of: migrating the destructive zone data across the M drive RAID set including dynamically reorganizing and packing segments within a stripe, releasing the destructive zone mirrored data stored in the free location of the N drive RAID set and stored in the new drive upon completion of the destructive zone data migration to the M drive RAID set, and migrating a remainder of the N drive RAID set data across the M drive RAID set, whereby data integrity is maintained in the N drive RAID set during migration to an M drive RAID set by maintaining mirrored destructive zone data until the expanding step has completed processing of the destructive zone of the N drive RAID set.
Claim 16
Dependent Claim 31 words
The method of claim 12 wherein the dynamically expanding step further includes the step of blocking read and write operations to the destructive zone during the destructive zone data migration step.
Claim 17
Dependent Claim 48 words
The method of claim 12 wherein the migrating the remainder of the N drive RAID set data step includes the steps of: selecting a current line in the N drive RAID set for processing; reading the current line; and writing the current line data to the new drive.
Claim 18
Dependent Claim 19 words
The method of claim 14 further including the step of blocking write operations to the current line being read.
Claim 19
Dependent Claim 79 words
The method of claim 12 further including the steps of: if a free location in the N drive RAID set is not available, identifying a last arm zone at a bottom of one drive in the N drive RAID set; copying data from the last arm zone to a new drive in the M drive RAID set; copying data from the destructive zone to the last arm zone and to a new drive in the M drive RAID set.
Claim 20
Dependent Claim 23 words
The method of claim 16 where data from the last arm zone is copied to a same relative position in the new drive.
Claim 21
Dependent Claim 27 words
The method of claim 17 wherein the destructive zone data is copied to a location just above data from the last arm zone in the new drive.
Claim 22
Dependent Claim 51 words
The method of claim 12 wherein the destructive zone is a predetermined number of stripes, and the predetermined number of stripes is calculated according to the formula: Stripes in Destructive Zone=N*M, where N=number of drives in the N drive RAID set, where M=number of drives in the M drive RAID set.
Claim 23
Dependent Claim 38 words
The method of claim 19 wherein the number of stripes in the destructive zone is calculated according to the formula: Stripes in Destructive Zone=(N-1)*(M-1), if data in the N drive RAID set includes parity data or reconstruction data.
Claim 24
Dependent Claim 36 words
The method of claim 19 wherein the number of stripes in the destructive zone is calculated according to the formula: Stripes in the Destructive Zone=(N/2)*(M/2), if the N drive RAID set is a mirrored RAID set.
Claim 25
Dependent Claim 194 words
A RAID storage controller for interfacing between a host and a RAID set comprising: a controller for transferring data between the host and the RAID set; and a dynamic expansion routine for expanding the data stored in an N drive RAID set into an M drive RAID set, the expansion routine including a destructive zone identifier for identifying a number of data stripes in a destructive zone of the N drive RAID set; a last arm identifier for identifying a last arm location in one drive of the N drive RAID set sized to hold data from the destructive zone; a data transport routine for copying data from the last arm location to a new drive in the M drive RAID set, for copying data from the destructive zone to the last arm location and to the new drive in the M drive RAID set; and an expansion routine for expanding data in the N drive RAID set to an M drive RAID set including dynamically reorganizing and packing segments within a stripe, whereby data integrity is maintained during expansion through mirrored destructive zone data at the last arm location and the new drive.
Claim 26
Dependent Claim 194 words
A RAID storage controller for interfacing between a host and a RAID set comprising: a controller for transferring data between the host and the RAID set; and a dynamic expansion routine for expanding the data stored in an N drive RAID set into an M drive RAID set, the expansion routine including a destructive zone identifier for identifying a number of data stripes in a destructive zone of the N drive RAID set; a last arm identifier for identifying a last arm location in one drive of the N drive RAID set sized to hold data from the destructive zone; a data transport routine for copying data from the last arm location to a new drive in the M drive RAID set, for copying data from the destructive zone to the last arm location and to the new drive in the M drive RAID set; and an expansion routine for expanding data in the N drive RAID set to an M drive RAID set including dynamically reorganizing and packing segments within a stripe, whereby data integrity is maintained during expansion through mirrored destructive zone data at the last arm location and the new drive.

References Cited (Backward Citations)

US5551003A Cited
US5574851A Cited
US5546558A Cited
US5572661A Cited
US5615352A Cited
US5664187A Cited
US5659704A Cited
US5651133A Cited
US5537534A Cited
US5542065A Cited
US5666512A Cited
US5657468A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-02-22 2002-08-24 2003-02-23 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-02-22 2006-08-24 2007-02-23 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-02-22 2010-08-24 2011-02-23 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag