IP Library Granted Patent US 11,010,091
Granted Patent B2
US 11,010,091 · App. 16/554,892 · Granted May 18, 2021

Multi-tier storage

Inventors: Kushal Patel (Pune, IN); Pardeep Singh (Pune, IN); Sarvesh S. Patel (Pune, IN); Sachin Chandrakant Punadikar (Pune, IN)
Assignee: International Business Machines Corporation
G06F3/0655G06F3/068G06F3/0611G06F12/08G06F12/0811
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 11,010,091
App. No.
16/554,892
Granted
May 18, 2021
Kind
B2
Abstract

Embodiments are disclosed for a multi-tier storage system. The techniques include identifying a candidate extent stored in a first tier of a first storage pool of a multi-tier storage system (MTSS). The candidate extent is blocked from promotion because of a space constraint on a second tier. The techniques also include identifying a second tier of a second storage pool. The second tier provides faster input-output (I/O) access than the first tier provides. Additionally, the second pool includes available space to store the candidate extent. The techniques further include copying the candidate extent to the second tier of the second storage pool. The techniques also include generating a cross-pool mapping. The cross-pool mapping maps from a first address of the candidate extent in the first tier of the first storage pool to a second address of the copied candidate extent in the second tier of the second storage pool.

Claims (69)

1. A computer-implemented method for a multi-tier storage system, comprising:

identifying a candidate extent stored in a first tier of a first storage pool of a multi-tier storage system (MTSS), wherein the candidate extent is blocked from promotion because of a space constraint on a second tier of the first storage pool;

identifying a second tier of a second storage pool of the MTSS, wherein the second tier of the second storage pool provides faster input-output (I/O) access than the first tier of the first storage pool provides, wherein the second storage pool comprises available space to store the candidate extent;

copying the candidate extent to the second tier of the second storage pool; and

generating a cross-pool mapping from a first address of the candidate extent in the first tier of the first storage pool to a second address of the copied candidate extent in the second tier of the second storage pool.

2. The method of claim 1 , further comprising generating a grain map of the copied candidate extent, wherein the grain map comprises a table indicating whether a plurality of grains in the copied candidate extent are valid for READ operations.

3. The method of claim 2 , further comprising:

receiving a WRITE operation request for the candidate extent;

performing the WRITE operation for the candidate extent in the first tier of the first storage pool; and

updating the grain map to invalidate a grain of the candidate extent updated by the WRITE operation.

4. The method of claim 1 , comprising:

receiving a WRITE operation request for the candidate extent;

performing the WRITE operation for the candidate extent in the first tier of the first storage pool; and

performing the WRITE operation for the candidate extent in the second tier of the second storage pool.

5. The method of claim 1 , comprising:

receiving a READ operation request for the candidate extent;

determining that the candidate extent is copied to the second tier of the second storage pool; and

performing the READ operation for the candidate extent in the second tier of the second storage pool.

6. The method of claim 1 , further comprising:

identifying the copied candidate extent during a promotion cycle; and

modifying a heat value of the candidate extent by dividing a READ access count of the candidate extent by a redundancy factor.

7. The method of claim 1 , further comprising:

identifying the copied candidate extent during a promotion cycle; and

modifying a heat value of the candidate extent by dividing a WRITE access count of the heat value of the candidate extent by two.

8. The method of claim 1 , further comprising generating a heat map for the MTSS by:

monitoring a number of READ operations performed for the candidate extent; and

monitoring a number of WRITE operations performed for the candidate extent.

9. The method of claim 8 , wherein identifying the candidate extent comprises determining that the candidate extent is a READ_ONLY extent, wherein the number of READ operations for the candidate extent is greater than zero and the number of WRITE operations for the candidate extent equals zero.

10. The method of claim 8 , wherein identifying the candidate extent comprises determining that the candidate extent is a READ_INTENSIVE extent, wherein the number of READ operations is greater than a specified threshold percentage of a sum of the number of READ operations and the number of WRITE operations.

11. A computer program product comprising program instructions stored on a computer readable storage medium, wherein the computer readable storage medium is not a transitory signal per se, the program instructions executable by a processor to cause the processor to perform a method comprising:

identifying a candidate extent stored in a first tier of a first storage pool of a multi-tier storage system (MTSS), wherein the candidate extent is blocked from promotion because of a space constraint on a second tier of the first storage pool;

identifying a second tier of a second storage pool of the MTSS, wherein the second tier of the second storage pool provides faster input-output (I/O) access than the first tier of the first storage pool provides, wherein the second storage pool comprises available space to store the candidate extent;

copying the candidate extent to the second tier of the second storage pool;

generating a cross-pool mapping from a first address of the candidate extent in the first tier of the first storage pool to a second address of the copied candidate extent in the second tier of the second storage pool; and

generating a grain map of the copied candidate extent, wherein the grain map comprises a table indicating whether a plurality of grains in the copied candidate extent are valid for READ operations.

12. The computer program product of claim 11 , the method further comprising:

receiving a WRITE operation request for the candidate extent;

performing the WRITE operation for the candidate extent in the first tier of the first storage pool; and

updating the grain map to invalidate a grain of the candidate extent updated by the WRITE operation.

13. The computer program product of claim 11 , the method further comprising:

receiving a WRITE operation request for the candidate extent;

performing the WRITE operation for the candidate extent in the first tier of the first storage pool; and

performing the WRITE operation for the candidate extent in the second tier of the second storage pool.

14. The computer program product of claim 11 , the method further comprising:

receiving a READ operation request for the candidate extent;

determining that the candidate extent is copied to the second tier of the second storage pool; and

performing the READ operation for the candidate extent in the second tier of the second storage pool.

15. The computer program product of claim 11 , the method further comprising:

identifying the copied candidate extent during a promotion cycle; and

modifying a heat value of the candidate extent by dividing a READ access count of the candidate extent by a redundancy factor equal to two.

16. The computer program product of claim 11 , the method further comprising:

identifying the copied candidate extent during a promotion cycle; and

modifying a heat value of the candidate extent by dividing a WRITE access count of the heat value of the candidate extent by two.

17. The computer program product of claim 11 , the method further comprising generating a heat map for the MTSS by:

monitoring a number of READ operations performed for the candidate extent; and

monitoring a number of WRITE operations performed for the candidate extent.

18. The computer program product of claim 17 , wherein identifying the candidate extent comprises determining that the candidate extent is a READ_ONLY extent, wherein the number of READ operations for the candidate extent is greater than zero and the number of WRITE operations for the candidate extent equals zero.

19. The computer program product of claim 17 , wherein identifying the candidate extent comprises determining that the candidate extent is a READ_INTENSIVE extent, wherein the number of READ operations is greater than a specified threshold percentage of a sum of the number of READ operations and the number of WRITE operations.

20. A system comprising:

a computer processing circuit; and

a computer-readable storage medium storing instructions, which, when executed by the computer processing circuit, are configured to cause the computer processing circuit to perform a method comprising:

identifying a candidate extent stored in a first tier of a first storage pool of a multi-tier storage system (MTSS), wherein the candidate extent is blocked from promotion because of a space constraint on a second tier of the first storage pool;

identifying a second tier of a second storage pool of the MTSS, wherein the second tier of the second storage pool provides faster input-output (I/O) access than the first tier of the first storage pool provides, wherein the second storage pool comprises available space to store the candidate extent;

copying the candidate extent to the second tier of the second storage pool;

generating a cross-pool mapping from a first address of the candidate extent in the first tier of the first storage pool to a second address of the copied candidate extent in the second tier of the second storage pool;

generating a grain map of the copied candidate extent, wherein the grain map comprises a table indicating whether a plurality of grains in the copied candidate extent are valid for READ operations;

receiving a WRITE operation request for the candidate extent;

performing the WRITE operation for the candidate extent in the first tier of the first storage pool; and

updating the grain map to invalidate a grain of the candidate extent updated by the WRITE operation.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 29, 2019
From: PATEL, KUSHAL; SINGH, PARDEEP; PATEL, SARVESH S.; PUNADIKAR, SACHIN CHANDRAKANT
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 050210/0196 →
Continuity (1)
Related Publication 20210064272A1 · Mar 4, 2021