Source: http://www.google.com/patents/US8156303?ie=ISO-8859-1
Timestamp: 2014-03-12 21:11:41
Document Index: 382691538

Matched Legal Cases: ['Application No. 60', 'Application No. 60', 'Application No. 2005304792', 'Application No. 2005304792', 'Application No. 2', 'Application No. 2', 'Application No. 05822403', 'Application No. 2', 'Application No. 2005304792', 'Application No. 05822403', 'Application No. 201010118886', 'Application No. 200580045892', 'Application No. 200580045892', 'Application No. 2007', 'Application No. 2007', 'Application No. 2007', 'Application No. 201010118886']

Patent US8156303 - Storage system condition indicator and method - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign inAdvanced Patent SearchPatentsA storage system condition indicator and method provides a visual display representing the operating condition of a set of storage devices. Various operating conditions may be defined based on available storage capacity and capacity to store data redundantly. One or more indicators may be used to represent...http://www.google.com/patents/US8156303?utm_source=gb-gplus-sharePatent US8156303 - Storage system condition indicator and methodAdvanced Patent SearchPublication numberUS8156303 B2Publication typeGrantApplication numberUS 12/906,848Publication dateApr 10, 2012Filing dateOct 18, 2010Priority dateNov 5, 2004Also published asCA2590361A1, CA2590361C, CA2590875A1, CA2590875C, CN101872319A, EP1815337A2, EP1815337B1, EP1815340A2, EP1825372A2, EP1825373A2, US7814272, US7814273, US7818531, US20060112222, US20060129875, US20060143380, US20060174157, US20110035565, WO2006050455A2, WO2006050455A3, WO2006050455A8, WO2006050455A9, WO2006052829A2, WO2006052829A3, WO2006052830A2, WO2006052830A3, WO2006052888A2, WO2006052888A3, WO2006052888A8Publication number12906848, 906848, US 8156303 B2, US 8156303B2, US-B2-8156303, US8156303 B2, US8156303B2InventorsGeoffrey S. BarrallOriginal AssigneeDrobo, Inc.Export CitationBiBTeX, EndNote, RefManPatent Citations (5), Non-Patent Citations (17), Classifications (35), Legal Events (5) External Links: USPTO, USPTO Assignment, EspacenetStorage system condition indicator and methodUS 8156303 B2Abstract A storage system condition indicator and method provides a visual display representing the operating condition of a set of storage devices. Various operating conditions may be defined based on available storage capacity and capacity to store data redundantly. One or more indicators may be used to represent the operating condition of the set of storage devices. The indicator(s) may be used to indicate whether additional storage capacity is recommended and, in a storage array, which slot in the array should be updated with additional storage capacity.
What is claimed is: 1. A method for indicating the condition of a storage system having a storage manager in communication with a number of storage devices, the method comprising:
determining a storage system condition, by the storage manager, including determining whether additional storage capacity is recommended based on the amount of unused storage available in each of a number of functioning storage devices and the data storage patterns in these storage devices; and
indicating the storage system condition, by the storage manager, including indicating whether the storage system has sufficient storage capacity within the functioning storage devices to provide redundant storage to newly-stored data and, when additional storage capacity is recommended, indicating how storage capacity should be added to the storage system, wherein a first indication state is used to indicate that storage capacity should be added by adding a new storage device and wherein a second indication state is used to indicate that storage capacity should be added by replacing an existing storage device with a larger-capacity storage device.
2. A method according to claim 1, wherein the storage system includes a plurality of storage slots in communication with the storage manager, each slot configured to receive a storage device, and wherein the storage manager indicates (1) that a new storage device should be added to the system when the storage system has at least one empty slot, and (2) that an existing storage device should be replaced with a larger-capacity storage device when the storage system does not have at least one empty slot.
3. A method according to claim 2, wherein the storage manager indicates a status for each slot including, when additional storage capacity is recommended, indicating the recommended slot to be populated with additional storage capacity, such that an overall storage system condition is indicated collectively by such indications.
4. A method according to claim 3, wherein each slot is associated with at least one indicator capable of representing a first state in which the slot is the recommended slot and the storage system has reached a predetermined failure condition, a second state in which the slot is the recommended slot and the storage system is approaching the failure condition but still has sufficient storage capacity to maintain redundant storage, and at least one third state indicating that the slot is not the recommended slot.
5. A method according to claim 4, wherein each slot is associated with a three-color light, wherein the first and second states are represented by first and second light colors.
6. A method according to claim 5, wherein the at least one third state is represented by:
a third light color, if the slot is populated with a storage device; and
a light off state, if the slot is not populated with a storage device.
7. A method according to claim 4, wherein each slot is associated with at least one light for illuminating a front panel to indicate the status for the slot.
performing, by the storage manager, a re-layout process in which at least some of the data stored in the functioning storage devices is reconfigured; and
indicating, by the storage manager, that the re-layout process is in progress.
9. A method according to claim 8, wherein the storage manager performs the re-layout process for at least one of (1) increasing the amount of available storage space in the storage system; and (2) upon detecting that additional storage capacity has been added, providing redundancy for data using the additional storage capacity.
10. A method according to claim 8, wherein indicating the fact of the transition comprises flashing a light between at least two states.
a number of storage devices; and
a storage manager in communication with the number of storage devices, the storage manager being configured to:
determine a storage system condition, including determining whether additional storage capacity is recommended based on the amount of unused storage available in each of the functioning storage devices and the data storage patterns in these storage devices; and
indicate the storage system condition, including indicating whether the storage system has sufficient storage capacity within the functioning storage devices to provide redundant storage to newly-stored data and, when additional storage capacity is recommended, indicating how storage capacity should be added to the storage system, wherein a first indication state is used to indicate that storage capacity should be added whether by adding a new storage device and wherein a second indication state is used to indicate that storage capacity should be added by replacing an existing storage device with a larger-capacity storage device.
12. A system according to claim 11, further comprising a plurality of storage slots in communication with the storage manager, each slot configured to receive one of the number of storage devices, wherein the storage manager is configured to indicate (1) that a new storage device should be added to the system when the storage system has at least one empty slot, and (2) that an existing storage device should be replaced with a larger-capacity storage device when the storage system does not have at least one empty slot.
13. A system according to claim 12, wherein the storage manager is configured to indicate a status for each slot including, when additional storage capacity is recommended, indicating the recommended slot to be populated with additional storage capacity, such that an overall storage system condition is indicated collectively by such indications.
14. A system according to claim 13, wherein each slot is associated with at least one indicator capable of representing a first state in which the slot is the recommended slot and the storage system has reached a predetermined failure condition, a second state in which the slot is the recommended slot and the storage system is approaching the failure condition but still has sufficient storage capacity to maintain redundant storage, and at least one third state indicating that the slot is not the recommended slot.
15. A system according to claim 14, wherein each storage device slot is associated with a three-color light, wherein the first and second states are represented by first and second light colors.
16. A system according to claim 15, wherein the at least one third state is represented by:
17. A system according to claim 14, further comprising a front panel, wherein each slot is associated with at least one light for illuminating the front panel to indicate the status for the slot.
18. A system according to claim 11, wherein the storage manager is further configured to:
perform a re-layout process in which at least some of the data stored in the functioning storage devices is reconfigured; and
indicate that the re-layout process is in progress.
19. A system according to claim 18, wherein the storage manager is configured to perform the re-layout process for at least one of (1) increasing the amount of available storage space in the storage system; and (2) upon detecting that additional storage capacity has been added, providing redundancy for data using the additional storage capacity.
20. A system according to claim 18, wherein indicating the fact of the transition comprises flashing a light between at least two states.
CROSS-REFERENCE TO RELATED APPLICATIONS This application is a continuation of prior application Ser. No. 11/267,960, filed Nov. 4, 2005, which claims the benefit of provisional Application No. 60/718,768, filed on Sep. 20, 2005, and which also claims the benefit of provisional Application No. 60/625,495, filed on Nov. 5, 2004. The aforementioned applications are hereby incorporated herein by reference in their entireties.
SUMMARY OF ILLUSTRATIVE EMBODIMENTS In a first illustrative embodiment there is provided a method for indicating the condition of a storage system having a storage manager in communication with a number of storage devices. The method includes two steps performed by the storage manager: determining a storage system condition, and indicating the storage system condition. The determining process includes determining whether additional storage capacity is recommended based on the amount of unused storage available in each of a number of functioning storage devices and the data storage patterns in these storage devices. The indicating process includes indicating two types of information: whether the storage system has sufficient storage capacity to provide redundant storage to newly-stored data and, when additional storage capacity is recommended, how storage capacity should be added to the storage system. In particular, the indicating process includes indicating whether to increase capacity by adding a new storage device, or by replacing an existing storage device with a larger-capacity storage device.
The storage system may also include a plurality of storage slots in communication with the storage manager, each slot configured to receive a storage device. In this case, the storage manager may indicate that a new storage device should be added to the system when the storage system has at least one empty slot. The storage manager may also indicate that an existing storage device should be replaced with a larger-capacity storage device when the storage system does not have at least one empty slot.
The storage manager may indicate a status for each slot including, when additional storage capacity is recommended, indicating the recommended slot to be populated with additional storage capacity, such that an overall storage system condition is indicated collectively by such indications. Each slot may be associated with at least one indicator capable of representing three states: a first state in which the slot is the recommended slot and the storage system has reached a predetermined failure condition, a second state in which the slot is the recommended slot and the storage system is approaching the failure condition but still has sufficient storage capacity to maintain redundant storage, and a third state indicating that the slot is not the recommended slot.
The indicator may be a three-color light, wherein the first and second states are represented by first and second light colors. Further, the at least one third state may be represented by a third light color, if the slot is populated with a storage device; and by a lights-off state, if the slot is not populated with a storage device. Each slot also may be associated with at least one light for illuminating a front panel to indicate the status for the slot.
In other related embodiments, the method may be extended by the storage manager performing a re-layout process in which at least some of the data stored in the functioning storage devices is reconfigured, and by indicating that the re-layout process is in progress. In these embodiments, the storage manager may perform the re-layout process to increase the amount of available storage space in the storage system; and/or, upon detecting that additional storage capacity has been added, to provide redundancy for data using the additional storage capacity. Indicating the fact of the transition may include flashing a light between at least two states.
In a further embodiment there is provided a storage system having a number of functioning storage devices. The storage system includes a plurality of storage device slots, each slot configured to receive a storage device, wherein the functioning storage devices are received in one or more of the plurality of storage device slots. The storage system also includes a storage manager in communication with the plurality of storage device slots. The storage manager is configured to determine a storage system condition and indicate the storage system condition, as described above. Various embodiments of the storage manager may be configured to implement the methods described above.
A fault-tolerant �pattern� for data storage is the particular which by data is distributed redundantly over one or more storage devices, and may be, among other things, mirroring (e.g., in a manner analogous to RAID1), striping (e.g., in a manner analogous to RAIDS), RAID6, dual parity, diagonal Parity, Low Density Parity Check codes, turbo codes, or other redundancy scheme or combination of redundancy schemes.
i) Assuming single drive mirror has data �A� and mirror �B� ii) Allocate 12 regions on drive to expand zone on to �C� iii) Copy mirror �B� to region set �C� iv) Any writes made to data already copied must be mirrored to the appropriate place in �C� v) When copy is complete, update zone table with new layout type and replace pointers to �B� with pointers to �C′� vi) Mark the regions that make-up �B� as free. The following describes the general process of expanding from dual drive mirroring to triple drive striping with parity in accordance with an exemplary embodiment of the invention:
i) Assuming single drive mirror has data �A� and missing mirror �B� or visa versa ii) Allocate 12 regions on the drive that contains �A� as �C� iii) Copy data �A� to region set �C� iv) Any writes made to data already copied must be mirrored to the appropriate place in �C� v) When copy is complete, update zone table with new layout type and replace pointers to �B� with pointers to �C′� The following describes the general process of contracting from triple drive stripe to dual drive mirror (missing parity) in accordance with an exemplary embodiment of the invention:
i) Assuming that stripe consists of data blocks �A�, �B�, �C� and �D� on different drives. Data �A� is missing. ii) Define �A� as containing the 1st third, �B� as the 2nd third and �C� as the 3rd third of the zone and �D� as the parity. iii) Allocate 4 regions �E� on the �B� drive, 2 regions �F� on the �C� drive and 6 regions �G� on the �D� drive. iv) Copy second half of �B� to �F� v) Construct missing data from �B�, �C� and �D� and write to �E� vi) Construct new parity from �E�/1st half B′ and �F�/�C� and write to �G� vii) Any writes made to data already copied must be mirrored to the appropriate place in �B�, �E�, �F� and �G� viii) When copy is complete, update zone table with new layout type and set pointers to �E�/1st half B′ and �FTC� and �G� ix) Mark 2nd half �B� and �D� regions as free. The following describes the general process of contracting from quad drive stripe to triple drive stripe (second ⅓ missing) in accordance with an exemplary embodiment of the invention:
i) Assuming that stripe consists of data blocks �A�, �B�, �C� and �D� on different drives. Data �B� is missing. ii) Define �A� as containing the 1st third, �B� as the 2nd third and �C� as the 3rd third of the zone and �D� as the parity. iii) Allocate 2 regions �E� on the �A� drive, 2 regions �F� on the �C� drive and 6 regions �G� on the �D� drive. iv) Construct missing data from 1st half �A�, 1st half �C� and 1st half �D� and write to �E� v) Construct missing data from 2nd half �A�, 2nd half �C� and 2nd half �D� and write to �F� vi) Construct new parity from �ATE� and �FTC� and write to �G� vii) Any writes made to data already copied must be mirrored to the appropriate place in �E�, �F� and �G� viii) When copy is complete, update zone table with new layout type and set pointers to �E�, �F� and �G� ix) Mark �D� regions as free. The following describes the general process of contracting from quad drive stripe to triple drive stripe (third ⅓ missing) in accordance with an exemplary embodiment of the invention:
i) Assuming that stripe consists of data blocks �A�, �B�, �C� and �D� on different drives. Data �C� is missing. ii) Define �A� as containing the 1st third, �B� as the 2nd third and �C� as the 3rd third of the zone and �D� as the parity. iii) Allocate 2 regions �E� on the �A� drive, 4 regions �F� on the �B� drive and 6 regions �G� on the �D� drive. iv) Copy 1st half �B� to �E� v) Construct missing data from �A�, �B� and �D� and write to �F� vi) Construct new parity from �ATE� and 2nd half �B�/�F� and write to �G� vii) Any writes made to data already copied must be mirrored to the appropriate place in �E�, �F� and �G� viii) When copy is complete, update zone table with new layout type and set pointers to �ATE� and 2nd half �B�/�F� and �G� ix) Mark 1st half �B� and �D� regions as free. For example, with reference again to FIG. 3, dual drive mirror (Zone B) could be reconstructed on Drive 2 if either Drive 0 or Drive 1 is lost, provided there is sufficient space available on Drive 2. Similarly, three drive stripe (Zone C) could be reconstructed utilizing Drive 3 if any of Drives 0-2 are lost, provided there is sufficient space available on Drive 3.
i) Assuming single drive mirror has data �A� and missing mirror �B� ii) Allocate 12 regions �C� on a drive other than that containing �A� iii) Copy data �A� to �C� iv) Any writes made to data already copied must be mirrored to the appropriate place in �C� v) When copy is complete, update zone table pointers to �B� with pointers to �C′� The following describes the general process of three drive stripe reconstruction in accordance with an exemplary embodiment of the invention:
Layer 2: Zones manager. Allocates/frees chunks of sectors called
Zones. Knows about SDM, DDM, SD3 etc in order to deal with errors
hashRecord.RefCount--;
The complete SHA1
of this hash; what do
we do if we get
Cluster offset within
Zone# containing this
One bit per snapshot
instance to indicate
that this cluster entry
is used by that
snapshot. This model
supports 8 snapshots
Bits 48-63[ . . . ]
first 2 words)
Write-in-progress bit array
512-682 + spare bits
0, 10 0, 2000
1, 10 2
regionm.read(logical_disk,
region_number,region_offset,length,buffer)
regionm. write
- if need to merge
sector into cluster
- allocate new
to hash table
- copy new hash
key to CAT
This application is related to the following United States patent applications, which are hereby incorporated herein by reference in their entireties:
application Ser. No. 11/267,938, filed Nov. 4, 2005 and issued as U.S. Pat. No. 7,814,273, entitled Dynamically Expandable and Contractible Fault-Tolerant Storage System Permitting Variously Sized Storage Devices and Method;
application Ser. No. 11/267,836, filed Nov. 4, 2005 and issued as U.S. Pat. No. 7,814,272, entitled Dynamically Upgradeable Fault-Tolerant Storage System Permitting Variously Sized Storage Devices and Method; and
application Ser. No. 11/267,963, filed Nov. 4, 2005, entitled Dynamically Expandable and Contractible Fault-Tolerant Storage System With Virtual Hot Spare.
Patent CitationsCited PatentFiling datePublication dateApplicantTitleUS5896256 *Sep 9, 1997Apr 20, 1999Sony CorporationVisual capacity indicator for data recording systemsUS6644556 *Jan 18, 2002Nov 11, 2003Hewlett-Packard Development Company, L.P.Storage device including storage space indicationUS6754664 *Feb 25, 2000Jun 22, 2004Microsoft CorporationSchema-based computer system health monitoringUS6912482 *Sep 11, 2003Jun 28, 2005Veritas Operating CorporationData storage analysis mechanismEP1400967A2 *Jan 29, 2003Mar 24, 2004Hitachi, Ltd.Data storage device management system* Cited by examinerNon-Patent CitationsReference1Australian Government Patent Office, Examiner's First Report on Patent Application No. 2005304792, dated May 7, 2010, 2 pages.2Australian Government Patent Office, Notice of Acceptance, Patent Application No. 2005304792, dated Jun. 23, 2010, 3 pages.3Bromberg & Sunstein LLP, Instructions for Response dated Feb. 25, 2009. 8 pages.4Canadian Intellectual Property Office, Notice of Allowance, Application No. 2,590,875, dated May 17, 2011, 1 page.5Canadian Intellectual Property Office, Official Action, Application No. 2,590,875, dated Nov. 17, 2010, 2 pages.6European Patent Office, Examination Report, Application No. 05822403.1-1225, dated Mar. 22, 2011, 5 pages.7Gowling Lafleur Henderson LLP Response to Official Action, Application No. 2,590,875, dated Feb. 23, 2011, 4 pages.8Griffith Hack, Response to Examiners First Report on Patent Application No. 2005304792 dated Jun. 11, 2010, 18 pages.9Harrison Goddard Foote, Response to Examination Report, Application No. 05822403.1, dated Jul. 14, 2011, 24 pages.10NPA International, Inc., First Office Action Reporting letter, Chinese Patent Application No. 201010118886.1, dated Jun. 10, 2011, 2 pages.11NPA International, Inc., Foreign Associate letter regarding Second Office Action, Chinese Patent Application No. 200580045892.6, dated Oct. 16, 2009, 3 pages.12NPA International, Inc., Translation of Text of the First Action, Application No. 200580045892.6, dated Aug. 4, 2008, 6 pages.13Shusaku Yamamoto, English Translation of Amended Claims as filed with the JPO, Japanese Application No. 2007-540109, dated Sep. 24, 2010, 4 pages.14Shusaku Yamamoto, English Translation of amended claims filed with the JPO, Japanese Patent Application No. 2007-540109, dated May 9, 2011, 4 pages.15Shusaku Yamamoto, English Translation of Notice of Reasons for Rejection, Japanese Patent Application No. 2007-540109, dated Feb. 9, 2011, 4 pages.16Sunstein Kann Murphy & Timbers LLP, Claims for Chinese Divisional Application No. 201010118886.1, filed with the Chinese State Intellectual Property Office on Feb. 23, 2010, 14 pages.17Sunstein Kann Murphy & Timbers LLP, Instructions to Kim Chang to Request Examination to the Korean Intellectual Property Office, based on International Application No. PCT/US2005/040175, dated Oct. 27, 2010, 5 pages.Classifications U.S. Classification711/170, 714/48, 714/57International ClassificationG06F11/30, G06F11/32Cooperative ClassificationG06F2211/1023, G06F3/0689, G06F11/1662, G06F3/0607, G06F11/2087, G06F3/0644, G06F11/1084, G06F11/1658, G06F11/325, G06F11/2094, G11B2220/65, G11B27/11, G06F11/1096, G06F2211/1028, G11B27/329, G06F2211/1004, G11B2220/415, G06F11/2069European ClassificationG06F11/32S2, G11B27/32D2, G11B27/11, G06F11/16D, G06F11/16D2, G06F11/20S2M, G06F11/20S6, G06F3/06A4F6, G06F3/06A6L4R, G06F3/06A2A4, G06F11/10R5, G06F11/10R2Legal EventsDateCodeEventDescriptionOct 2, 2012CCCertificate of correctionMar 2, 2012ASAssignmentOwner name: DROBO, INC., CALIFORNIAFree format text: CHANGE OF NAME;ASSIGNOR:DATA ROBOTICS, INC.;REEL/FRAME:027798/0297Effective date: 20110712Nov 2, 2010ASAssignmentFree format text: CHANGE OF NAME;ASSIGNOR:DATA ROBOTICS INCORPORATED;REEL/FRAME:025242/0892Owner name: DATA ROBOTICS, INC., CALIFORNIAEffective date: 20070717Oct 29, 2010ASAssignmentEffective date: 20070302Owner name: DATA ROBOTICS INCORPORATED, CALIFORNIAFree format text: CHANGE OF NAME;ASSIGNOR:TRUSTED DATA CORPORATION;REEL/FRAME:025216/0296Oct 28, 2010ASAssignmentFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:BARRALL, GEOFFREY S.;REEL/FRAME:025210/0843Owner name: TRUSTED DATA CORPORATION, CALIFORNIAEffective date: 20060120RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services©2012 Google