High-performance log-structured RAID
First Claim
Patent Images
1. ) A method of storing data on a disk storage subsystem comprising:
- receiving a request to write data; and
appending each write operation to a first log to identify a storage location of data written to the disk subsystem, wherein the first log consists of a sequence of segments, the segments consist of a sequence of variable length stripes, a length of a stripe varies based on a quantity of disks addressed by a stripe.
5 Assignments
0 Petitions
Accused Products
Abstract
This invention describes a high-performance, log-structured implementation of a RAID subsystem that can be efficiently implemented in software. The methods described here allow the RAID subsystem to achieve high performance without using specialized hardware such as non-volatile memory or hardware XOR/DMA engines. Furthermore, the RAID implementation described here is well suited for supporting many functions required for advanced storage virtualization such as virtual disks, graceful addition and removal of disks, tolerating multi-disk failures, and snapshots.
-
Citations
26 Claims
-
1. ) A method of storing data on a disk storage subsystem comprising:
-
receiving a request to write data; and
appending each write operation to a first log to identify a storage location of data written to the disk subsystem, wherein the first log consists of a sequence of segments, the segments consist of a sequence of variable length stripes, a length of a stripe varies based on a quantity of disks addressed by a stripe. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. ) A machine readable-medium, having stored thereon a set of instructions, which when executed, perform a method of storing data on a disk storage subsystem comprising:
-
receiving a request to write data; and
appending each write operation to a first log to identify a storage location of data written to the disk subsystem, wherein the first log consists of a sequence of segments, the segments consist of a sequence of variable length stripes, a length of a stripe varies based on a quantity of disks addressed by a stripe. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
Specification