Apparatus, system, and method for data storage using progressive raid
First Claim
1. A method for reliable, high performance storage of data, the method comprising:
- calculating a stripe pattern for data to be stored and writing N data segments to N storage devices within a set of storage devices, wherein each of the N data segments is written to a separate storage device;
writing the N data segments of the stripe to a parity-mirror storage device within the set of storage devices, the parity-mirror storage device being in addition to the N storage devices; and
recovering a data segment stored on an unavailable storage device of the N storage devices in response to a request to read the data segment, the data segment recovered from a corresponding data segment stored on the parity-mirror storage device prior to a parity progression module generating one or more parity data segments for the stripe and storing the one or more parity data segments on the parity-mirror storage device.
9 Assignments
0 Petitions
Accused Products
Abstract
An apparatus, system, and method are disclosed for data storage with progressive redundant array of independent drives (“RAID”). A storage request receiver module, a striping module, a parity-mirror module, and a parity progression module are included. The storage request receiver module receives a request to store data of a file or of an object. The striping module calculates a stripe pattern for the data. The stripe pattern includes one or more stripes, and each stripe includes a set of N data segments. The striping module writes the N data segments to N storage devices. Each data segment is written to a separate storage device within a set of storage devices assigned to the stripe. The parity-mirror module writes a set of N data segments to one or more parity-mirror storage devices within the set of storage devices. The parity progression module calculates a parity data segment on each parity-mirror device in response to a storage consolidation operation, and stores the parity data segments. The storage consolidation operation is conducted to recover storage space and/or data on a parity-mirror storage device.
-
Citations
20 Claims
-
1. A method for reliable, high performance storage of data, the method comprising:
-
calculating a stripe pattern for data to be stored and writing N data segments to N storage devices within a set of storage devices, wherein each of the N data segments is written to a separate storage device; writing the N data segments of the stripe to a parity-mirror storage device within the set of storage devices, the parity-mirror storage device being in addition to the N storage devices; and recovering a data segment stored on an unavailable storage device of the N storage devices in response to a request to read the data segment, the data segment recovered from a corresponding data segment stored on the parity-mirror storage device prior to a parity progression module generating one or more parity data segments for the stripe and storing the one or more parity data segments on the parity-mirror storage device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for reliable, high performance storage of data, the method comprising:
-
calculating a stripe pattern for data to be stored and writing N data segments to N storage devices within a set of storage devices, wherein each of the N data segments is written to a separate storage device; writing the N data segments of the stripe to a parity-mirror storage device within the set of storage devices, the parity-mirror storage device being in addition to the N storage devices; and recovering a data segment for an unavailable storage device of the N storage devices using one or more parity data segments stored on the parity-mirror storage device by a parity progression module. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A system comprising:
-
a set of storage devices comprising N storage devices and a parity-mirror storage device in addition to the N storage devices; a processor; a memory comprising modules for execution by the processor, the memory comprising; a striping module configured to calculate a stripe pattern for data to be stored and writing N data segments to the N storage devices within the set of storage devices, wherein each of the N data segments is written to a separate storage device; a parity-mirror module configured to write the N data segments of the stripe to the parity-mirror storage device within the set of storage devices; and a pre-consolidation restoration module configured to recover a data segment stored on an unavailable storage device of the N storage devices in response to a request to read the data segment, the data segment recovered from a corresponding data segment stored on the parity-mirror storage device prior to a parity progression module generating one or more parity data segments for the stripe and storing the one or more parity data segments on the parity-mirror storage device. - View Dependent Claims (20)
-
Specification