IP Library Granted Patent US 9,582,363
Granted Patent B2
US 9,582,363 · App. 14/299,941 · Granted Feb 28, 2017

Failure domain based storage system data stripe layout

Inventors: Ralph A. Becker-Szendy (Los Gatos, CA); David J. Craft (Wimberly, TX); Scott D. Guthridge (San Jose, CA); James C. Wyllie (Monte Sereno, CA)
Assignee: International Business Machines Corporation
G06F11/1096
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,582,363
App. No.
14/299,941
Granted
Feb 28, 2017
Kind
B2
Abstract

A method for performing stripe placement within a storage system is disclosed. After a set of failure domains within a storage system has been identified, the failure domains are then organized to form a hierarchy of failure domains. A failure domain is defined as a group of one or more disks that are more likely to fail together because a common component is shared by that group of disks. Stripe placement is performed across all active failure domains within the storage system using a greedy algorithm.

Claims (14)

1. A computer implemented method of determining a data storage layout comprising:

identifying by a controller a plurality of active failure domains associated with a plurality of storage units, wherein each of said plurality of active failure domains includes at least one component that is associated with at least one storage unit;

defining a hierarchy of failure domains formed by a plurality of levels of identified active failure domains;

selecting a group of said active failure domains from said hierarchy of failure domains that is suitable for placing a stripe, wherein said selecting further includes selecting one of said active failure domains based on a cost determination of a strip placement by computing a cost value dependent on whether or not said one active failure domain in combination with other active failure domains already selected in said stripe will lead to more data stripes than the average number of any other combination of domain pairs; and

placing a plurality of strips of said stripe across said selected group of active failure domains.

2. The method of claim 1 further comprising changing placement of a stripe among said hierarchy of failure domains after a failure domain has been removed from said hierarchy of failure domains.

3. The method of claim 1 further comprising changing placement of a stripe among said hierarchy of failure domains after a new failure domain has been added to said hierarchy of failure domains.

4. A computer non-transitory machine-readable medium having a computer program product for determining a data storage layout, said computer non-transitory machine-readable medium comprising:

program code for identifying a plurality of active failure domains associated with a plurality of storage units, wherein each of said plurality of active failure domains includes at least one component that is associated with at least one storage unit;

program code for defining a hierarchy of failure domains formed by a plurality of levels of identified active failure domains;

program code for selecting a group of said active failure domains from said hierarchy of failure domains that is suitable for placing a stripe, wherein said selecting further includes selecting one of said active failure domains based on a cost determination of a strip placement by computing a cost value dependent on whether or not said one active failure domain in combination with other active failure domains already selected in said stripe will lead to more data stripes than the average number of any other combination of domain pairs; and

program code for placing a plurality of strips of said stripe across said selected group of active failure domains.

5. The machine-readable medium of claim 4 further comprising program code for changing placement of a stripe among said hierarchy of failure domains after a failure domain has been removed from said hierarchy of failure domains.

6. The machine-readable medium of claim 4 further comprising program code for changing placement of a stripe among said hierarchy of failure domains after a new failure domain has been added to said hierarchy of failure domains.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2014
From: BECKER-SZENDY, RALPH A.; CRAFT, DAVID J.; GUTHRIDGE, SCOTT D.; WYLLIE, JAMES C.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 033060/0737 →
Continuity (1)
Related Publication 20150355971A1 · Dec 10, 2015