Patent US6826711B2 successfully refreshed from Google Patents.
← Back to Patent Explorer
US6826711B2 Expired / Lapsed US ⏱️ 0.0 years remaining

System and method for data protection with multidimensional parity

Assignee: EMC Corp
•
Filing: 2001-02-13
•
Granted: 2004-11-30
•
Expires: 2021-02-13
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A high availability, high reliability storage system that leverages rapid advances in commodity computing devices and the robust nature of internetwork technology such as the Internet. A system of parity distribution in accordance with the present invention allows for greater fault tolerance and levels of storage efficiency than possible with conventional RAID (levels 0-5 ) paradigms. Data can be recovered or made available even in the case of loss of N, N+1, or more devices or storage elements over which stripes of the data set have been distributed or partitioned. The present invention provides a parity distribution that can be used to distribute data stored in a single storage device or across multiple connected or otherwise networked devices.

Inventors

  • 👤 Gregory Hagan Moulton
  • 👤 Felix Hamilton

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-01 18:38
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/08; G06F11/10; G06F11/1076; G06F2211/00; G06F2211/10; G06F2211/1002; G06F2211/1028

Claims Analysis

Total Claims: 38
Claim 1
Independent Claim 176 words
A data storage management system comprising: a plurality of storage devices, each storage device comprising a plurality of storage areas; a storage management control mechanism configured to receive a storage request associated with a data set; a communication system between the plurality of storage devices and the storage management mechanism; means for determining at least one digital representation of the data set; a write mechanism in the storage management control mechanism capable of writing the digital representation in at least one storage area; a read mechanism in the storage management control mechanism capable of reading the data set from the storage devices using the digital representation from the at least one storage area; wherein the storage management control mechanism includes mechanisms to govern the read mechanism to perform the act of reading the data set from at least three of a plurality of digital representations for the data set; and wherein the storage management control mechanism determines which data to report in response to a read request based on the consensus of the three digital representations.
Claim 2
Dependent Claim 176 words
A data storage management system comprising: a plurality of storage devices, each storage device comprising a plurality of storage areas; a storage management control mechanism configured to receive a storage request associated with a data set; a communication system between the plurality of storage devices and the storage management mechanism; means for determining at least one digital representation of the data set; a write mechanism in the storage management control mechanism capable of writing the digital representation in at least one storage area; a read mechanism in the storage management control mechanism capable of reading the data set from the storage devices using the digital representation from the at least one storage area; wherein the storage management control mechanism includes mechanisms to govern the read mechanism to perform the act of reading the data set from at least three of a plurality of digital representations for the data set; and wherein the storage management control mechanism determines which data to report in response to a read request based on the consensus of the three digital representations.
Claim 3
Dependent Claim 20 words
The data storage management system of claim 1 wherein the at least one digital representation includes an unaltered data set.
Claim 4
Dependent Claim 23 words
The data storage management system of claim 1 wherein the at least one digital representation includes a parity image of the data set.
Claim 5
Dependent Claim 32 words
The data storage management system of claim 1 wherein the at least one digital representation includes at least one exclusive-or result of the data set with at least one other data set.
Claim 6
Dependent Claim 25 words
The data storage management system of claim 1 wherein the at least one digital representation includes at least one binary complement result of data set.
Claim 7
Dependent Claim 33 words
The data storage management system of claim 1 wherein the at least one digital representation includes the one's complement binary addition result of the data set with at least one other data set.
Claim 8
Dependent Claim 33 words
The data storage management system of claim 1 wherein the at least one digital representation includes the one's complement binary subtraction result of the data set with at least one other data set.
Claim 9
Dependent Claim 33 words
The data storage management system of claim 1 wherein the at least one digital representation includes the two's complement binary addition result of the data set with at least one other data set.
Claim 10
Dependent Claim 33 words
The data storage management system of claim 1 wherein the at least one digital representation includes the two's complement binary subtraction result of the data set with at least one other data set.
Claim 11
Dependent Claim 43 words
A data storage management system of claim 1 wherein the storage management control mechanism includes mechanisms that govern the read mechanism to perform the act of reading the data set from one of a plurality of digital representations for the given data set.
Claim 12
Dependent Claim 45 words
The data storage management system of claim 1 wherein the storage management control mechanism governs the read mechanism to perform the act of reading the data set from one of the plurality of storage devices containing a written digital representation of the given data set.
Claim 13
Dependent Claim 36 words
A data storage management system of claim 1 wherein the storage management control mechanism governs the read mechanism to select at least one the storage devices based upon reducing the time required to complete the operation.
Claim 14
Dependent Claim 44 words
A data storage management system of claim 1 wherein the storage management control mechanism governs the read mechanism to perform the read operation from at least one of the plurality of storage device devices such that inaccessible ones of the storage devices are avoided.
Claim 15
Dependent Claim 25 words
A data storage management system of claim 1 wherein at least some of the digital representations corresponding to the data set differ from each other.
Claim 16
Dependent Claim 113 words
A data storage management system comprising: a plurality of storage devices, each storage device comprising a plurality of storage areas; a storage management control mechanism configured to receive a storage request associated with a data set; a communication system between the plurality of storage devices and the storage management mechanism; means for determining at least one digital representation of the data set; and a write mechanism in the storage management control mechanism capable of writing the digital representation in at least one storage area; wherein the number of the storage areas used for writing a first data set differs from the number of the storage areas used for writing a second data set.
Claim 17
Dependent Claim 113 words
A data storage management system comprising: a plurality of storage devices, each storage device comprising a plurality of storage areas; a storage management control mechanism configured to receive a storage request associated with a data set; a communication system between the plurality of storage devices and the storage management mechanism; means for determining at least one digital representation of the data set; and a write mechanism in the storage management control mechanism capable of writing the digital representation in at least one storage area; wherein the number of the storage areas used for writing a first data set differs from the number of the storage areas used for writing a second data set.
Claim 18
Dependent Claim 115 words
A data storage management system for storing a plurality of data sets, the system comprising: a plurality of storage devices, each storage device comprising a plurality of storage areas; a storage management control mechanism configured to receive a storage request associated with a data set; a communication system coupling the plurality of storage devices and the storage management mechanism; and a plurality of parity groups defined within at least one storage area, the parity group comprising a logical combination of the plurality of data sets; wherein levels of parity protection of the plurality of parity groups varies for arbitrarily small subsets of data within the overall data set protected by the plurality of parity groups.
Claim 19
Dependent Claim 115 words
A data storage management system for storing a plurality of data sets, the system comprising: a plurality of storage devices, each storage device comprising a plurality of storage areas; a storage management control mechanism configured to receive a storage request associated with a data set; a communication system coupling the plurality of storage devices and the storage management mechanism; and a plurality of parity groups defined within at least one storage area, the parity group comprising a logical combination of the plurality of data sets; wherein levels of parity protection of the plurality of parity groups varies for arbitrarily small subsets of data within the overall data set protected by the plurality of parity groups.
Claim 20
Dependent Claim 27 words
The data storage mechanism of claim 16 wherein the parity group is dynamically configured by altering the membership of the group of the plurality of data sets.
Claim 21
Dependent Claim 34 words
The data storage mechanism of claim 16 wherein each of plurality of data sets is stored in a storage area that is separate from the storage area in which the parity group is defined.
Claim 22
Dependent Claim 27 words
The data storage mechanism of claim 16 wherein the storage management control mechanism dynamically modifies the parity group definition while the plurality of data sets remain available.
Claim 23
Dependent Claim 38 words
The data storage mechanism of claim 18 wherein the parity group is used to reconstruct primary data and to serve data requests in lieu of or in addition to serving the data requests directly from the primary data.
Claim 24
Independent Claim 82 words
A method of providing parity protection for a data set comprising the acts of: selecting a primary data element for entry; determining a desired degree of fault tolerance for the data element; selecting a number of non-intersecting parity groups to be associated with the primary data element; selecting a primary location for the primary data element; writing the data element to the primary location; updating the parity groups associated with the data element; and confirming the write operation and associated parity updates.
Claim 25
Independent Claim 82 words
A method of providing parity protection for a data set comprising the acts of: selecting a primary data element for entry; determining a desired degree of fault tolerance for the data element; selecting a number of non-intersecting parity groups to be associated with the primary data element; selecting a primary location for the primary data element; writing the data element to the primary location; updating the parity groups associated with the data element; and confirming the write operation and associated parity updates.
Claim 26
Dependent Claim 22 words
The method of claim 21 further comprising: reading the data element directly from its primary location in response to a read request.
Claim 27
Dependent Claim 22 words
The method of claim 21 further comprising: reading an image of the data element reconstructed from one of its associated parity groups.
Claim 28
Dependent Claim 41 words
The method of claim 21 further comprising: automatically maintaining, migrating, and reconstructing primary data and associated parity groups in response to detected network, server, disk, and human error while the data element remains available for reading from at least one source.
Claim 29
Independent Claim 99 words
A method of implementing data parity protection for a plurality of data sets comprising the acts of: providing a plurality of storage devices, each storage device comprising a plurality of storage areas; associating a parity group with each data set, each parity group comprising at least one of the plurality of data sets, wherein the act of associating a parity group with each data set comprises selecting a number of parity groups for each data set independently of the number of parity groups for each other data set; and dynamically altering the composition of the plurality of storage devices.
Claim 30
Independent Claim 99 words
A method of implementing data parity protection for a plurality of data sets comprising the acts of: providing a plurality of storage devices, each storage device comprising a plurality of storage areas; associating a parity group with each data set, each parity group comprising at least one of the plurality of data sets, wherein the act of associating a parity group with each data set comprises selecting a number of parity groups for each data set independently of the number of parity groups for each other data set; and dynamically altering the composition of the plurality of storage devices.
Claim 31
Dependent Claim 12 words
The method of claim 25 further comprising dynamically altering the parity group.
Claim 32
Dependent Claim 24 words
The method of claim 25 wherein the act of dynamically altering the composition of the plurality of storage devices comprises adding a storage device.
Claim 33
Dependent Claim 24 words
The method of claim 25 wherein the act of dynamically altering the composition of the plurality of storage devices comprises removing a storage device.
Claim 34
Dependent Claim 35 words
The method of claim 26 wherein the act of dynamically altering the parity group comprises adding an additional data set to the parity group without affecting availability of other data sets in the parity group.
Claim 35
Dependent Claim 34 words
The method of claim 26 wherein the act of dynamically altering the parity group comprises removing a data set from the parity group without affecting availability of other data sets in the parity group.
Claim 36
Dependent Claim 32 words
The method of claim 25 further comprising accessing data from a selected data set by reading from at least one parity group associated with the data set without reconstructing the data set.
Claim 37
Independent Claim 54 words
A method of providing parity protection for a data set comprising the acts of: determining a desired degree of fault tolerance for data element; selecting a number of non-intersecting parity groups to be associated with the data element; selecting a location for the data element; and writing the data element to the selected location.
Claim 38
Independent Claim 54 words
A method of providing parity protection for a data set comprising the acts of: determining a desired degree of fault tolerance for data element; selecting a number of non-intersecting parity groups to be associated with the data element; selecting a location for the data element; and writing the data element to the selected location.

References Cited (Backward Citations)

US3668647A Cited
US4215402A Cited
US4887235A Cited
US4649479A Cited
US4901223A Cited
US4761785A Cited
US4761785B1 Cited
US4887204A Cited
US4897781A Cited
US5005122A Cited
US5109515A Cited
US5606719A Cited
US5146568A Cited
US4982324A Cited
US5089958A Cited
US5018060A Cited
US5535407A Cited
US5239637A Cited
US5454099A Cited
US5133065A Cited
US5163148A Cited
US5355453A Cited
US5276867A Cited
US5276860A Cited
US5218695A Cited
US5379418A Cited
US5130992A Cited
US5479654A Cited
US5524205A Cited
US5239647A Cited
US5317728A Cited
US5210866A Cited
US5155835A Cited
US5278838A Cited
US5239659A Cited
US5347653A Cited
US5153986A Cited
US5305389A Cited
US5325505A Cited
US5367698A Cited
US5559991A Cited
US5802264A Cited
US5751936A Cited
US5452454A Cited
US5367637A Cited
US5448718A Cited
US5263154A Cited
US5586322A Cited
JPH06202813A Cited
US5403639A Cited
US5497483A Cited
US5640561A Cited
US5404508A Cited
US5487160A Cited
US5404527A Cited
US5696901A Cited
US5544320A Cited
US5659747A Cited
US5649196A Cited
US5452440A Cited
US5515502A Cited
US5771354A Cited
US6085298A Cited
US5574906A Cited
US5659743A Cited
US5513314A Cited
US5604862A Cited
US5978791A Cited
US5802297A Cited
US5778395A Cited
US5996089A Cited
US5754844A Cited
US5765173A Cited
US5909540A Cited
US5794254A Cited
US6014676A Cited
US6016553A Cited
US6151659A Cited
US6029168A Cited
US6122754A Cited
US6199179B1 Cited
US6128762A Cited
US6307487B1 Cited
US6320520B1 Cited
US6148414A Cited
US20020029319A1 Cited
US6351838B1 Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2007-11-30 2008-05-31 2008-11-30 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2011-11-30 2012-05-31 2012-11-30 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2015-11-30 2016-05-31 2016-11-30 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag