System and method for recovering a storage array
First Claim
1. A method comprising:
- determining a size corresponding to a storage stripe by parsing data from an array of physical storage devices that store the storage stripe;
associating pieces with the storage stripe;
parsing the pieces associated with the storage stripe to detect a storage configuration corresponding to the storage stripe and determine ordinal information corresponding to the pieces; and
in response to loss or corruption of metadata describing the storage stripe, reconstructing the metadata based on the determined size corresponding to the storage stripe, the pieces associated with the storage stripe, the detected storage configuration, and the determined ordinal information.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and techniques for recovering a storage array are disclosed. These systems and techniques include determining a size corresponding to a storage stripe of the storage array. Pieces assigned to the storage stripe are identified. A storage configuration corresponding to the pieces assigned to the storage stripe is detected. Ordinal information and parity information are determined corresponding to the pieces assigned to the storage stripe. The size determined corresponding to the storage stripe, identification of the pieces assigned to the storage stripe, the storage configuration, the ordinal information, and the parity information is stored in a data store to reconstruct lost or corrupted metadata corresponding to the storage array.
12 Citations
20 Claims
-
1. A method comprising:
-
determining a size corresponding to a storage stripe by parsing data from an array of physical storage devices that store the storage stripe; associating pieces with the storage stripe; parsing the pieces associated with the storage stripe to detect a storage configuration corresponding to the storage stripe and determine ordinal information corresponding to the pieces; and in response to loss or corruption of metadata describing the storage stripe, reconstructing the metadata based on the determined size corresponding to the storage stripe, the pieces associated with the storage stripe, the detected storage configuration, and the determined ordinal information. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory machine readable medium having stored thereon instructions for performing a method comprising machine executable code which when executed by at least one machine, causes the machine to:
-
determine a size corresponding to a storage stripe by parsing data from an array of physical storage devices that store the storage stripe; associate pieces with the storage stripe; parse the pieces associated with the storage stripe to detect a storage configuration corresponding to the storage stripe and determine ordinal information corresponding to the pieces; and in response to loss or corruption of metadata describing the storage stripe, reconstruct the metadata based on the determined size corresponding to the storage stripe, the pieces associated with the storage stripe, the detected storage configuration, and the determined ordinal information. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A computing device comprising:
-
a memory containing machine readable medium comprising machine executable code having stored thereon instructions for performing a method of recovering a storage array; a processor coupled to the memory, the processor configured to execute the machine executable code to cause the processor to; determine a size corresponding to a storage stripe by parsing data from an array of physical storage devices that store the storage stripe; associate pieces with the storage stripe; parse the pieces associated with the storage stripe to detect a storage configuration corresponding to the storage stripe and determine ordinal information corresponding to the pieces; and in response to loss or corruption of metadata describing the storage stripe, reconstruct the metadata based on the determined size corresponding to the storage stripe, the pieces associated with the storage stripe, the detected storage configuration, and the determined ordinal information. - View Dependent Claims (18, 19, 20)
-
-
17. The computing device of 16, wherein determining the size corresponding to the storage stripe includes determining a size of a storage stripe piece, the determining of the size of the storage stripe piece comprising:
-
identifying a contiguous portion of sectors that are associated with a same write sequence number; and determining a size of the contiguous portion of sectors.
-
Specification