IP Library Granted Patent US 10,042,578
Granted Patent B2
US 10,042,578 · App. 15/345,554 · Granted Aug 7, 2018

Extent migration in multi-tier storage systems

Inventors: Shrikant V. Karve (Pune, IN); Kushal S. Patel (Pune, IN); Sarvesh S. Patel (Pune, IN)
Assignee: International Business Machines Corporation
G06F3/0647G06F3/0611G06F3/0653G06F3/0683
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 10,042,578
App. No.
15/345,554
Granted
Aug 7, 2018
Kind
B2
Abstract

Migrating data in a tiered storage system. The tiered storage system includes an upper tier with at least one storage device and a lower tier with at least one storage device. Data on a storage device includes one or more extents, and each extent contains one or more grains. I/O activity of grains is recorded during a predefined time interval. For each extent, a mean heat value over grains in the extent during the predefined time interval is calculated from the recorded I/O activity, where a heat value is a numerical indication of frequency of access of a grain, and a spike heat indicator, which measures non-uniformity of heat values of grains in the extent is calculated. Two extents with mean heat values that differ at most by a predefined threshold are identified, and the extent with a greater spike heat indicator is migrated to an upper tier.

Claims (56)

1. A computer-implemented method for migrating data in a tiered storage system to improve system performance, wherein the tiered storage system includes at least one upper tier and one lower tier, and wherein at least one storage device is assigned to an upper tier and at least one storage device is assigned to a lower tier, and wherein data on a storage device includes one or more extents, and wherein each extent contains one or more grains, the method comprising:

recording, by a computer, in a datastore, I/O activity of grains in extents of storage devices of the tiered storage system during a predefined time interval;

for each extent:

calculating, by the computer, from the recorded I/O activity, a mean heat value over grains in the extent during the predefined time interval, wherein a heat value of a grain is a numerical indication of frequency of access of the grain; and

calculating, by the computer, from the recorded I/O activity, a spike heat indicator, which provides a numerical measure of non-uniformity of heat values of grains in the extent;

identifying, by the computer, two extents in a lower tier with respective mean heat values that differ at most by a predefined threshold;

migrating, by the computer, to an upper tier, the extent of the two extents in the lower tier that has a greater spike heat indicator;

identifying, by the computer, two extents in an upper tier with respective mean heat values that differ at most by a predefined threshold; and

migrating, by the computer, to a lower tier, the extent of the two extents in the upper tier that has a lesser spike heat indicator.

2. The method of claim 1 , wherein the spike heat indicator of an extent is a quotient of a maximal heat value of grains in the extent minus the mean heat value of the extent to a number of grains in the extent with heat value above the mean heat value of the extent.

3. The method of claim 1 , wherein calculating the spike heat indicator of an extent comprises:

smoothing consecutive heat values of grains in the extent by approximating the heat values with a smooth function;

performing peak detection to identify peaks in the smoothed consecutive heat values; and

computing spike heat indicators by summing magnitudes of second derivatives at the identified peaks or magnitudes of variations of first derivatives at the identified peaks.

4. The method of claim 1 , wherein a grain is a single block or a predefined number of blocks.

5. The method of claim 1 , wherein the recorded I/O activity of an extent of a storage device of the tiered storage system during the predefined time interval comprises a total number of I/O requests during the predefined time interval for each grain of the extent.

6. The method of claim 1 , wherein an upper tier comprises one or more solid state drive (SSD) storage devices, and wherein a lower tier comprises one or more devices selected from the group consisting of:

hard disk drives (HDD) storage devices, tape drives, and cloud storage.

7. A computer system for migrating data in a tiered storage system to improve system performance, wherein the tiered storage system includes at least one upper tier and one lower tier, and wherein at least one storage device is assigned to an upper tier and at least one storage device is assigned to a lower tier, and wherein data on a storage device includes one or more extents, and wherein each extent contains one or more grains, the computer system comprising:

one or more computer hardware processors, one or more computer-readable storage media, and program instructions stored on one or more of the computer-readable storage media, which when executed cause at least one of the one or more computer hardware processors to perform a method comprising:

recording, by a computer, in a datastore, I/O activity of grains in extents of storage devices of the tiered storage system during a predefined time interval;

for each extent:

calculating, by the computer, from the recorded I/O activity, a mean heat value over grains in the extent during the predefined time interval, wherein a heat value of a grain is a numerical indication of frequency of access of the grain; and

calculating, by the computer, from the recorded I/O activity, a spike heat indicator, which provides a numerical measure of non-uniformity of heat values of grains in the extent;

identifying, by the computer, two extents in a lower tier with respective mean heat values that differ at most by a predefined threshold;

migrating, by the computer, to an upper tier, the extent of the two extents in the lower tier that has a greater spike heat indicator;

identifying, by the computer, two extents in an upper tier with respective mean heat values that differ at most by a predefined threshold; and

migrating, by the computer, to a lower tier, the extent of the two extents in the upper tier that has a lesser spike heat indicator.

8. The computer system of claim 7 , wherein the spike heat indicator of an extent is a quotient of a maximal heat value of grains in the extent minus the mean heat value of the extent to a number of grains in the extent with heat value above the mean heat value of the extent.

9. The computer system of claim 7 , wherein calculating the spike heat indicator of an extent comprises:

smoothing consecutive heat values of grains in the extent by approximating the heat values with a smooth function;

performing peak detection to identify peaks in the smoothed consecutive heat values; and

computing spike heat indicators by summing magnitudes of second derivatives at the identified peaks or magnitudes of variations of first derivatives at the identified peaks.

10. The computer system of claim 7 , wherein a grain is a single block or a predefined number of blocks.

11. The computer system of claim 7 , wherein the recorded I/O activity of an extent of a storage device of the tiered storage system during the predefined time interval comprises a total number of I/O requests during the predefined time interval for each grain of the extent.

12. The computer system of claim 7 , wherein an upper tier comprises one or more solid state drive (SSD) storage devices, and wherein a lower tier comprises one or more devices selected from the group consisting of:

hard disk drives (HDD) storage devices, tape drives, and cloud storage.

13. A computer program product for migrating data in a tiered storage system to improve system performance, wherein the tiered storage system includes at least one upper tier and one lower tier, and wherein at least one storage device is assigned to an upper tier and at least one storage device is assigned to a lower tier, and wherein data on a storage device includes one or more extents, and wherein each extent contains one or more grains, the computer program product comprising:

one or more computer-readable storage media and program instructions stored on the one or more computer-readable storage media, the program instructions, when executed by a computer, cause the computer to perform a method comprising:

recording, by a computer, in a datastore, I/O activity of grains in extents of storage devices of the tiered storage system during a predefined time interval;

for each extent:

calculating, by the computer, from the recorded I/O activity, a mean heat value over grains in the extent during the predefined time interval, wherein a heat value of a grain is a numerical indication of frequency of access of the grain; and

calculating, by the computer, from the recorded I/O activity, a spike heat indicator, which provides a numerical measure of non-uniformity of heat values of grains in the extent;

identifying, by the computer, two extents in a lower tier with respective mean heat values that differ at most by a predefined threshold;

migrating, by the computer, to an upper tier, the extent of the two extents in the lower tier that has a greater spike heat indicator;

identifying, by the computer, two extents in an upper tier with respective mean heat values that differ at most by a predefined threshold; and

migrating, by the computer, to a lower tier, the extent of the two extents in the upper tier that has a lesser spike heat indicator.

14. The computer program product of claim 13 , wherein the spike heat indicator of an extent is a quotient of a maximal heat value of grains in the extent minus the mean heat value of the extent to a number of grains in the extent with heat value above the mean heat value of the extent.

15. The computer program product of claim 13 , wherein calculating the spike heat indicator of an extent comprises:

smoothing consecutive heat values of grains in the extent by approximating the heat values with a smooth function;

performing peak detection to identify peaks in the smoothed consecutive heat values; and

computing spike heat indicators by summing magnitudes of second derivatives at the identified peaks or magnitudes of variations of first derivatives at the identified peaks.

16. The computer program product of claim 13 , wherein a grain is a single block or a predefined number of blocks.

17. The computer program product of claim 13 , wherein the recorded I/O activity of an extent of a storage device of the tiered storage system during the predefined time interval comprises a total number of I/O requests during the predefined time interval for each grain of the extent.

18. The computer program product of claim 13 , wherein an upper tier comprises one or more solid state drive (SSD) storage devices, and wherein a lower tier comprises one or more devices selected from the group consisting of:

hard disk drives (HDD) storage devices, tape drives, and cloud storage.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 8, 2016
From: KARVE, SHRIKANT V.; PATEL, KUSHAL S.; PATEL, SARVESH S.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 040247/0159 →
Continuity (1)
Related Publication 20180129443A1 · May 10, 2018
Cited By (1)
US 12,346,295