IP Library Granted Patent US 8,495,295
Granted Patent B2
US 8,495,295 · App. 12/776,708 · Granted Jul 23, 2013

Mass storage system and method of operating thereof

Inventor: Haim Kopylovitz (Herzliya, IL)
Assignee: Infinidat Ltd.
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 8,495,295
App. No.
12/776,708
Granted
Jul 23, 2013
Kind
B2
Abstract

There are provided a mass storage system and a method of operating thereof. The method comprises: a) dividing the storage space into a first portion configured to be available to a client and a second portion configured to be unavailable to a client, thus giving rise, respectively to an available storage space and a spare storage space; b) distributing the available space and the spare space over the disk drives thus giving rise to available space and spare space allocated to each given disk drive; c) detecting underperformance of at least one disk drive among the plurality of disk drives; d) responsive to detecting underperformance, decreasing respective available space allocated to said at least one underperforming disk drive and respectively increasing spare space allocated to said at least one underperforming disk drive thus giving rise to a re-configured allocation of the available space; and e) transferring the stored data in accordance with said re-configured allocation of the available space.

Claims (59)

1. A method of operating a mass storage system comprising a storage layer operatively coupled to a plurality of disk drives constituting a storage space, the system configured to enable direct or indirect serving a request directed to any accessible address in the storage space, the method comprising:

a. dividing the storage space into an available storage space configured to be available to a client and a spare storage space configured to be unavailable to a client;

b. distributing the available space and the spare space over the plurality of disk drives thus giving rise to available space and spare space allocated to each given disk drive;

c. detecting underperformance of at least one disk drive among the plurality of disk drives;

d. responsive to detecting underperformance, decreasing respective available space allocated to said at least one underperforming disk drive and respectively increasing spare space allocated to said at least one underperforming disk drive thus giving rise to a re-configured allocation of the available space; wherein the amount of increased spare space allocated to said at least one underperforming disk drive is predefined as a certain percentage of respective allocated spare space; and

e. transferring the stored data in accordance with said re-configured allocation of the available space.

2. The method of claim 1 further comprising distributing a remainder of the available space resulting from said re-configured allocation of the available space over at least some of due performing disk drives among the plurality of disk drives and respectively decreasing the spare space allocated to the at least some of due performing disk drives.

3. The method of claim 1 wherein distributing the available space and the spare space over the plurality of disk drives is provided evenly.

4. The method of claim 3 wherein distributing said remainder of the available space over at least part of the due performing disk drives and respectively decreasing the spare space allocated to the at least some of due performing disk drives are provided evenly.

5. The method of claim 1 wherein the stored data portions are arranged in one or more RAID groups with the help of an allocation function and wherein transferring the stored data portions comprises:

a. re-calculating the values of the allocation function in accordance with said re-configured allocation of available space over the disk drives;

b. detecting members of RAID groups which need to be moved in accordance with the re-calculated values of the allocation function; and

c. moving data corresponding to said detected members of RAID groups in accordance with the re-calculated values of the allocation function.

6. The method of claim 1 wherein detecting underperformance of at least one disk drive is provided with the help of SMART indication.

7. The method of claim 1 wherein underperformance is detected if an estimated value characterizing expected performance degradation matches a certain underperformance criteria.

8. The method of claim 7 wherein READ ERROR RATE and/or SEEK ERROR RATE are used as parameters indicative of expected performance degradation for SMART-enabled disk drives.

9. The method of claim 8 wherein a rate of variation of values of READ ERROR RATE and/or SEEK ERROR RATE is used as said estimated value characterizing expected performance degradation.

10. The method of claim 9 wherein said rate of variation is calculated in relation with a certain rate measuring threshold.

11. The method of claim 10 wherein READ ERROR RATE values and/or SEEK ERROR RATE values respective rate measuring thresholds used for estimating expected performance degradation substantially before achieving a threshold predefined for alerting an expected failure of SMART-enabled disk drive.

12. A mass storage system comprising:

a. a plurality of disk drives constituting a storage space, wherein:

i. the system configured to enable direct or indirect serving a request directed to any accessible address in the storage space;

ii. the storage space is divided into an available storage space configured to be available to a client and a spare storage space configured to be unavailable to a client;

iii. the available space and the spare space are distributed over the plurality of disk drives thus giving rise to available space and spare space allocated to each given disk drive;

b. means for detecting underperformance of at least one disk drive among the plurality of disk drives;

c. a control layer operatively coupled to the plurality of disk drives and configured:

i. responsive to detecting underperformance, to decrease respective available space allocated to said at least one underperforming disk drive and respectively increase spare space allocated to said at least one underperforming disk drive thus giving rise to a re-configured allocation of the available space; wherein the amount of increased spare space allocated to said at least one underperforming disk drive is predefined as a certain percentage of respective allocated spare space; and

ii. facilitate transferring the stored data in accordance with said re-configured allocation of the available space.

13. The system of claim 12 wherein the control layer is further configured to distribute a remainder of the available space resulting from said re-configured allocation of the available space over at least some of due performing disks drives among the plurality of disk drives and respectively decrease the spare space allocated to the at least some of due performing disk drives.

14. The system of claim 12 wherein distributing the available space and the spare space over the disk drives, distributing said remainder of the available space over at least part of the due performing disks and respectively decreasing the spare space allocated to said drives are provided evenly.

15. The system of claim 12 wherein the stored data portions are arranged in one or more RAID groups with the help of an allocation function and wherein transferring the stored data portions comprises:

a. re-calculating the values of the allocation function in accordance with said re-configured allocation of available space over the disk drives;

b. detecting members of RAID groups which need to be moved in accordance with the re-calculated values of the allocation function; and

c. moving data corresponding to said detected members of RAID groups in accordance with the re-calculated values of the allocation function.

16. The system of claim 12 wherein said means for detecting underperformance of disk drives comprise one or more SMART controllers integrated with individual disk drives among said plurality of disk drives.

17. The system of claim 12 wherein at least part of said means for detecting underperformance of disk drives is comprised in said control layer.

18. The system of claim 12 further configured to estimate a value characterizing expected performance degradation of a given disk drive and to detect underperformance of said disk drive if said estimated value matches a certain underperformance criteria.

19. The system of claim 18 wherein READ ERROR RATE and/or SEEK ERROR RATE are used as parameters indicative of expected performance degradation for SMART-enabled disk drives.

20. The system of claim 19 wherein a rate of variation of values of READ ERROR RATE and/or SEEK ERROR RATE is used as said estimated value characterizing expected performance degradation.

21. The system of claim 20 wherein said rate of variation is calculated in relation with a certain rate measuring threshold.

22. A method of operating a mass storage system comprising a storage layer operatively coupled to a plurality of disk drives constituting a storage space, the system configured to enable direct or indirect serving a request directed to any accessible address in the storage space, the method comprising:

a. dividing the storage space into an available storage space configured to be available to a client and a spare storage space configured to be unavailable to a client;

b. distributing the available space and the spare space over the plurality of disk drives thus giving rise to available space and spare space allocated to each given disk drive;

c. detecting underperformance of at least one disk drive among the plurality of disk drives;

d. responsive to detecting underperformance, decreasing respective available space allocated to said at least one underperforming disk drive and respectively increasing spare space allocated to said at least one underperforming disk drive thus giving rise to a re-configured allocation of the available space; wherein the amount of increased spare space allocated to said at least one underperforming disk drive is predefined as a function of at least one parameter selected from a group comprising:

i. a number of currently underperforming disk drives among the plurality of disk drives;

ii. a number of underperforming disk drives among the plurality of disk drives detected during a certain period of time;

iii. a rate of deviation of the detected level of underperformance from the current average performance of the plurality of the disk drives; and

iv. a rate of deviation of the detected level of underperformance from the average performance of the plurality of the disk drives in the system over a certain period of time; and

e. transferring the stored data in accordance with said re-configured allocation of the available space.

23. A mass storage system comprising:

a. a plurality of disk drives constituting a storage space, wherein:

i. the system configured to enable direct or indirect serving a request directed to any accessible address in the storage space;

ii. the storage space is divided into an available storage space configured to be available to a client and a spare storage space configured to be unavailable to a client;

iii. the available space and the spare space are distributed over the plurality of disk drives thus giving rise to available space and spare space allocated to each given disk drive;

b. means for detecting underperformance of at least one disk drive among the plurality of disk drives;

c. a control layer operatively coupled to the plurality of disk drives and configured:

i. responsive to detecting underperformance, to decrease respective available space allocated to said at least one underperforming disk drive and respectively increase spare space allocated to said at least one underperforming disk drive thus giving rise to a re-configured allocation of the available space; wherein the amount of increased spare space allocated to said at least one underperforming disk drive is predefined as a function of at least one parameter selected from a group comprising: a number of currently underperforming disk drives among the plurality of disk drives; a number of underperforming disk drives among the plurality of disk drives detected during a certain period of time; a rate of deviation of the detected level of underperformance from the current average performance of the plurality of the disk drives; and a rate of deviation of the detected level of underperformance from the average performance of the plurality of the disk drives in the system over a certain period of time; and

ii. facilitate transferring the stored data in accordance with said re-configured allocation of the available space.

Assignments (10)
SECURITY INTEREST Recorded Jan 30, 2025
From: INFINIDAT LTD
To: KREOS CAPITAL VII AGGREGATOR SCSP,
Reel/Frame 070056/0458 →
RELEASE OF SECURITY INTEREST IN IP RECORDED AT R/F 55653/0854 Recorded Jan 18, 2024
From: SILICON VALLEY BANK
To: INFINIDAT LTD.
Reel/Frame 066344/0064 →
SECURITY INTEREST Recorded Jan 10, 2024
From: INFINIDAT LTD
To: HSBC BANK PLC
Reel/Frame 066268/0584 →
RELEASE OF SECURITY INTEREST Recorded Mar 30, 2021
From: BANK LEUMI LE-ISRAEL B.M.
To: INFINIDAT LTD.
Reel/Frame 055776/0597 →
RELEASE OF SECURITY INTEREST Recorded Mar 30, 2021
From: BANK LEUMI LE-ISRAEL B.M.
To: INFINIDAT LTD.
Reel/Frame 055776/0526 →
SECURITY INTEREST Recorded Mar 18, 2021
From: INFINIDAT LTD.
To: SILICON VALLEY BANK
Reel/Frame 055653/0854 →
SECURITY INTEREST Recorded Apr 12, 2018
From: INFINIDAT LTD.
To: BANK LEUMI LE-ISRAEL B.M.
Reel/Frame 045914/0276 →
LIEN Recorded Jul 18, 2016
From: INFINIDAT LTD.
To: BANK LEUMI LE-ISRAEL B.M.
Reel/Frame 039361/0161 →
CHANGE OF NAME Recorded Nov 5, 2010
From: XSIGNNET LTD.
To: INFINIDAT LTD.
Reel/Frame 025301/0943 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2010
From: KOPYLOVITZ, HAIM
To: XSIGNNET LTD.
Reel/Frame 024632/0446 →
Continuity (2)
Provisional Application 61176914 · May 10, 2009
Related Publication 20100287408A1 · Nov 11, 2010