← Back to Patent Explorer
EP0541992B1 Expired / Lapsed EP ⏱️ 0.0 years remaining

Data reconstruction in a storage device array system

Assignee: Fujitsu Ltd
•
Filing: 1992-10-19
•
Granted: 1998-04-29
•
Expires: 2012-10-19
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The present invention provides a storage device array system (24) and method for operating a storage device array system that provides for data transfers to and/or from a storage device array (30) during the reconstruction of data contained in a failed storage device (e.g. 32-7) onto a spare storage device (36). One embodiment of the invention provides for data transfers during the reconstruction of data on the spare storage device (36) onto a storage device that is replacing the failed storage device. Another embodiment of the invention allows data, contained in a storage device to or from which data can be written and read but only in a hindered manner, to be reconstructed on a spare storage device (36) using other storage devices (32) in the array (30). In this situation, write operations to the storage device array (30) are conducted in a manner that provides fault tolerance, i.e. the ability to continue the reconstruction process, in the event one of the other storage devices being used to reconstruct the data on the spare storage device (36) cannot provide the necessary data for reconstruction. <IMAGE>

Inventors

  • 👤 Joseph Chen
  • 👤 Kenneth Lau

Bibliographic Details

Application Number —
Jurisdiction EP
Data Source google_patents
Last Synchronized 2026-11-06 10:43
CPC Classifications
G; G11; G11C; G11C29/00; G11C29/70; G06; G06F; G06F11/00; G06F11/07; G06F11/08; G06F11/10; G06F11/1076; G06F11/1084; G06F11/1092; G06F11/14; G06F11/1446; G06F11/1456; G06F11/1458; G06F11/1469; G11C29/88

Claims Analysis

Total Claims: 12
Claim 1
Independent Claim 393 words
A storage device array system (24) that has the ability to conduct data transfers with a host (22) during reconstruction, comprising: a plurality of storage devices (32-0 to 32-7) for storing groups of data, each group having data units distributed over said plurality of storage devices, each group of data being redundantly encoded such that, in an absence of error, a subset of said plurality of storage devices is sufficient for transferring the group of data to said host (22); a spare storage device (36), additional to said plurality of storage devices, for use in replacing a first storage device (e.g. 32-7) of said plurality of storage devices (32-0 to 32-7); wherein a storage device array (30) includes said plurality of storage devices (32-0 to 32-7) and said spare storage device (36) so that, from a plurality of said data groups, at least first and second data units stored on said first storage device (32-7) are reconstructed on said spare storage device (36) in a reconstruction when said first storage device (32-7) is in a failed but usable state in which data transfers, including at least a read data transfer to the host, are still possible but only with difficulty; means (28) for controlling transfers of data between the host (22) and said storage device array (30) including: (i) means for determining when said reconstruction is to be performed; (ii) data reconstruction means for performing said reconstruction, said first data unit being reconstructed before said second data unit, and a reconstruction boundary (RCB) being defined as a storage location in said first storage device (32-7) prior to which reconstruction has been accomplished and after which reconstruction has not been accomplished; (iii) data transfer conducting means for conducting a transfer of data between the host (22) and any of said storage devices (32-0 to 32-6) other than said first storage device, wherein said transfer of data occurs between reconstruction of said first data unit and reconstruction of said second data unit; and reconstruction continuation means for proceeding with said reconstruction in a case when a data transfer is conducted with respect to a location that follows the reconstruction boundary and when a second storage device e.g. (32-6) of said plurality of storage devices cannot provide necessary data for reconstruction, by copying data from said first storage device (32-7) to said spare storage device (36).
Claim 2
Dependent Claim 38 words
A storage device array system, as claimed in claim 1, wherein said data transfer conducting means (28) includes means for writing data from the host (22) to said spare storage device (36) prior to the reconstruction boundary (RCB).
Claim 3
Dependent Claim 110 words
A storage device array system, as claimed in claim 1 or 2, wherein, when said first storage device (32-7) is in said failed but usable state, said first storage device transfers data with the host system (22) during a write data transfer between the host system and said storage device array system (24) via said data transfer conducting means (28), said data of said write data transfer being transformed into at least one group of data, and wherein said data transfer conducting means writes said group of data to said spare storage device (36) prior to the reconstruction boundary and to said first storage device (32-7) after the reconstruction boundary.
Claim 4
Dependent Claim 120 words
A storage device array system, as claimed in claim 1 or 2, wherein, when said first storage device (32-7) is in said failed but usable state, said first storage device transfers data with the host system (22) during a read data transfer between said storage device array system and the host system, with said data transfer conducting means (28) for conducting said read data transfer with the host system using a reading means for reading data from said plurality of storage devices; wherein said reading means includes following-data-reading means for reading data following the reconstruction boundary (RCB) using said first storage device (32-7) and any of said plurality of storage devices (32-0 to 32-6) other than said first storage device.
Claim 5
Dependent Claim 52 words
A storage device array system, as claimed in claim 4, wherein said reading means includes prior data reading means for reading data prior to said reconstruction boundary (RCB) from said spare storage device (36) and any of said plurality of storage devices (32-0 to 32-6) other than said first storage device (32-7).
Claim 6
Dependent Claim 359 words
A storage device array system (24) that has the ability to conduct data transfers with a host (22) during reconstruction, comprising: a plurality of storage devices (32-0 to 32-7) for storing groups of data units, each group having data units distributed over said plurality of storage devices, each group of data being redundantly encoded such that, in an absence of error, a subset of said plurality of storage devices is sufficient for transferring the group of data to said host (22); a spare storage device (36), additional to said plurality of storage devices (32-0 to 32-7), for use in replacing a first storage device (e.g. 32-7) of said plurality of storage devices, wherein a storage device array (30) includes said plurality of storage devices (32-0 to 32-7) and said spare storage device (36); means for reconstructing a plurality of data units from said first storage device (32-7) on said spare storage device (36) when said first storage device (32-7) is in a failed but usable state in which a read data transfer and a write data transfer with the host (22) are still possible but only with difficulty, said plurality of data units being included in a plurality of data groups; means (28) for accessing said plurality of data units on said spare storage device (36) after reconstruction by said reconstructing means for a host initiated data transfer request which results in transferring data corresponding to said plurality of data groups between the host (22) and the set of all said storage devices (32-0 to 32-6,36) including said spare storage device but excluding said first storage device (32-7), these storage devices (32-0 to 32-6,36) being arranged to read or write said plurality of data groups substantially simultaneously when fulfilling said host initiated data transfer request; and means for transferring data corresponding to said plurality of data groups between the host and said set of storage devices (32-0 to 32-6,36) during reconstruction by said reconstruction means, said transferring means being arranged to access a data location in each of said first storage device (32-7) and said spare storage device (36) when carrying out a write data transfer from the host.
Claim 7
Independent Claim 372 words
A method for conducting data transfers with a host (22) during reconstruction in a storage device array system (24), comprising steps of: providing a plurality of storage devices (32-0 to 32-7) for storing groups of data units, each group having data units distributed over said plurality of storage devices, each group of data being redundantly encoded such that, in an absence of error, a subset of said plurality of storage devices is sufficient for transferring the group of data to said host (22); providing a spare storage device (36), additional to said plurality of storage devices, for use in replacing a first storage device (e.g. 32-7) of said plurality of storage devices (32-0 to 32-7), said spare storage device and said plurality of storage devices being included in a storage device array (30) ; performing a reconstruction wherein, from a plurality of said data groups, at least first and second data units stored on said first storage device (32-7) are reconstructed on said spare storage device (36) when said first storage device (32-7) is in a failed but usable state in which a read data transfer and a write data transfer with the host (22) are still possible but only with difficulty; transferring data between the host (22) and said storage device array (30) by: (i) determining when said reconstruction is to be performed; (ii) performing said reconstruction, said first data unit being reconstructed before said second data unit, and a reconstruction boundary (RCB) being defined as a storage location in said first storage device (32-7) prior to which reconstruction has been accomplished and after which reconstruction has not been accomplished; and (iii) conducting a transfer of data between the host (22) and any of said storage devices (32-0 to 32-6) other than said first storage device (32-7), after reconstruction of said first data unit but before reconstruction of said second data unit; and continuing with said reconstruction in a case when a data transfer is conducted with respect to a location that follows the reconstruction boundary and when a second storage device (e.g. 32-6) of said plurality of storage devices cannot provide necessary data for reconstruction, by copying data from said first storage device (32-7) to said spare storage device (36).
Claim 8
Dependent Claim 32 words
A method as claimed in claim 7, wherein said data transfer conducting step includes writing data from the host (22) to said spare storage device (36) prior to the reconstruction boundary (RCB).
Claim 9
Dependent Claim 109 words
A method as claimed in claim 7 or 8, wherein: when said first storage device (32-7) is in said failed but usable state, said first storage device transfers data with the host system (22) during a write data transfer between the host system and said storage device array system (24), said data transfer conducting step including conducting said write data transfer with the host system by transforming data of said write data transfer into at least one group of data, and writing said group of data to said spare storage device (36) prior to the reconstruction boundary (RCB) and to said first storage device (32-7) after the reconstruction boundary.
Claim 10
Dependent Claim 95 words
A method as claimed in claim 7 or 8 wherein, when said first storage device (32-7) is in said failed but usable state, said first storage device transfers data with the host system (22) during a read data transfer between said storage device array system and the host system, said data transfer conducting step comprising conducting said read data transfer with the host system by reading data following the reconstruction boundary (RCB) using said first storage device (32-7) and any of said plurality of storage devices (32-0 to 32-6) other than said first storage device.
Claim 11
Dependent Claim 44 words
A method as claimed in claim 10 wherein; said reading step includes reading data prior to said reconstruction boundary (RCB) from said spare storage device (36) and any of said plurality of storage devices (32-0 to 32-6) other than said first storage device (32-7).
Claim 12
Independent Claim 341 words
A method for conducting data transfers with a host (22) during reconstruction in a storage device array system, comprising: providing a plurality of storage devices (32-0 to 32-7) for storing groups of data units, each group having data units distributed over said plurality of storage devices, each group of data being redundantly encoded such that, in an absence of error, a subset of said plurality of storage devices is sufficient for transferring the group of data to said host (22); providing a spare storage device (36), additional to said plurality of storage devices, for use in replacing a first storage device (e.g. 32-7) of said plurality of storage devices, wherein a storage device array (30) includes said plurality of storage devices (32-0 to 32-7) and said spare storage device (36); reconstructing a plurality of data units from said first storage device (32-7) on said spare storage device (36) when said first storage device is in a failed but usable state in which a read data transfer and a write data transfer with the host are still possible but only with difficulty, said plurality of data units being included in a plurality of data groups; accessing said plurality of data units on said spare storage device (36) after said step of reconstructing for a host initiated data transfer request which results in transferring data, corresponding to said plurality of data groups, between the host and the set of all said storage devices (32-0 to 32-6,36) including said spare storage device but excluding said first storage device (32-7), these storage devices reading or writing said plurality of data groups substantially simultaneously when fulfilling said host initiated data transfer request; and transferring data corresponding to said plurality of data groups between the host (22) and said set of storage devices (32-0 to 32-6,36) during said step of reconstructing; wherein a data location in each of said first storage device (32-7) and said spare storage device (36) is accessed when said step of transferring includes a write to said storage device array from the host.

References Cited (Backward Citations)

No citation records indexed.

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag