IP Library Granted Patent US 8,301,670
Granted Patent B2
US 8,301,670 · App. 13/250,517 · Granted Oct 30, 2012

Managing snapshot storage pools

Assignee: International Business Machines Corporation
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,301,670
App. No.
13/250,517
Granted
Oct 30, 2012
Kind
B2
Abstract

Various embodiments of the invention relate to an apparatus and a method of managing a snapshot storage pool (SSP) associated with a storage unit of a distributed data storage system. According to some embodiments of the invention, the apparatus may include a logic module and a processor. The logic module may be adapted to provide a threshold corresponding to a ratio between a current amount of storage resources used for storing snapshots in the SSP and a total storage capacity defined for the SSP. The processor may be adapted to trigger an action that may be effective for managing the SSP in response to the amount of storage resources used for storing snapshots in the SSP crossing the threshold.

Claims (36)

1. A method for managing a plurality of storage pools of snapshots in a distributed data storage system, the method comprising the steps of:

determining, by a processor, a ratio between a current amount of storage resources used in a first storage pool of snapshots and a total storage capacity for the first storage pool of snapshots, the ratio determined when one of a predetermined number of write operations has been performed on the first storage pool of snapshots and after a predetermined amount of time has passed;

detecting a first trigger condition in the first storage pool of snapshots, the first trigger condition comprising determining that the ratio is greater than a first predetermined threshold; and

transferring storage resources that are assigned to a second storage pool of snapshots to the first storage pool of snapshots in response to detecting the first trigger condition.

2. The method of claim 1 , further comprising the steps of:

detecting a second trigger condition in the first storage pool of snapshots; and

transferring storage resources associated with a third storage pool of snapshots to the first storage pool of snapshots in response to detecting the second trigger condition.

3. The method of claim 2 , wherein the step of detecting the second trigger condition comprises the step of determining that the ratio between the current amount of storage resources used in the first storage pool of snapshots and the total storage capacity for the first storage pool of snapshots is greater than a second predetermined threshold.

4. The method of claim 1 , further comprising the step of selecting the second storage pool of snapshots based on a predefined criteria related to one of an amount of unused storage resources and when a particular snapshot was established.

5. The method of claim 4 , wherein the step of selecting the second storage pool of snapshots comprises the step of determining that the second storage pool of snapshots includes a greatest amount of unused storage resources amongst the plurality of storage pools of snapshots.

6. The method of claim 4 , wherein the step of selecting the second storage pool of snapshots comprises the step of determining that the second storage pool of snapshots includes a least amount of unused storage resources amongst the plurality of storage pools of snapshots.

7. The method of claim 4 , wherein the step of selecting the second storage pool of snapshots comprises the step of determining that the second storage pool of snapshots included a most-recently established snapshot or a least-recently established snapshot.

8. A computer-readable storage memory storing instructions that, when executed by a processor, cause the processor to perform a method for managing a plurality of storage pools of snapshots in a distributed data storage system comprising the steps of:

determining a ratio between a current amount of storage resources used in a first storage pool of snapshots and a total storage capacity for the first storage pool of snapshots, the ratio determined when one of a predetermined number of write operations has been performed on the first storage pool of snapshots and after a predetermined amount of time has passed;

detecting a first trigger condition in the first storage pool of snapshots, the first trigger condition comprising determining that the ratio is greater than a first predetermined threshold; and

transferring storage resources that are assigned to a second storage pool of snapshots to the first storage pool of snapshots in response to detecting the first trigger condition.

9. The computer-readable storage memory of claim 8 , further comprising instructions for performing the steps of: detecting a second trigger condition in the first storage pool of snapshots; and transferring storage resources associated with a third storage pool of snapshots to the first storage pool of snapshots in response to detecting the second trigger condition.

10. The computer-readable storage memory of claim 8 , further comprising instructions for performing the step of selecting the second storage pool of snapshots based on a predefined criteria related to one of an amount of unused storage resources and when a particular snapshot was established.

11. The computer-readable storage memory of claim 9 , wherein the instructions for performing the step of detecting the second trigger condition comprise instructions for performing the step of determining that the ratio between the current amount of storage resources used in the first storage pool of snapshots and the total storage capacity for the first storage pool of snapshots is greater than a second predetermined threshold.

12. The computer-readable storage memory of claim 10 , wherein the instructions for performing the step of selecting the second storage pool of snapshots comprise instructions for performing the step of determining that the second storage pool of snapshots includes a greatest amount of unused storage resources amongst the plurality of storage pools of snapshots.

13. The computer-readable storage memory of claim 10 , wherein the instructions for performing the step of selecting the second storage pool of snapshots comprise instructions for performing the step of determining that the second storage pool of snapshots includes a least amount of unused storage resources amongst the plurality of storage pools of snapshots.

14. The computer-readable storage memory of claim 10 , wherein the instructions for performing the step of selecting the second storage pool of snapshots comprise instructions for performing the step of determining that the second storage pool of snapshots included a most-recently established snapshot or a least-recently established snapshot.

15. A system for managing a plurality of storage pools of snapshots in a distributed data storage system, comprising:

memory associated with the plurality of storage pools of snapshots; and

a processor in communication with the memory, wherein the processor is configured to:

determine a ratio between a current amount of storage resources used in a first storage pool of snapshots and a total storage capacity for the first storage pool of snapshots, the ratio determined when one of a predetermined number of write operations has been performed on the first storage pool of snapshots and after a predetermined amount of time has passed,

detect a first trigger condition in the first storage pool of snapshots, the first trigger condition comprising determining that the ratio is greater than a first predetermined threshold, and

transfer storage resources that are assigned to a second storage pool of snapshots to the first storage pool of snapshots in response to detecting the first trigger condition.

16. The system of claim 15 , wherein the processor is further configured to:

detect a second trigger condition in the first storage pool of snapshots; and

transfer storage resources associated with a third storage pool of snapshots to the first storage pool of snapshots in response to detecting the second trigger condition.

17. The system of claim 15 , wherein the processor is further configured to select the second storage pool of snapshots based on a predefined criteria related to one of an amount of unused storage resources and when a particular snapshot was established.

18. The system of claim 16 , wherein processor is configured to determine that the ratio between the current amount of storage resources used in the first storage pool of snapshots and the total storage capacity for the first storage pool of snapshots is greater than a second predetermined threshold in detecting the second trigger condition.

19. The system of claim 17 , wherein the processor is configured to determine that the second storage pool of snapshots includes a greatest amount of unused storage resources amongst the plurality of storage pools of snapshots in selecting the second storage pool of snapshots.

20. The system of claim 17 , wherein the processor is configured to determine that the second storage pool of snapshots includes a least amount of unused storage resources amongst the plurality of storage pools of snapshots in selecting the second storage pool of snapshots.

21. The system of claim 17 , wherein the processor is configured to determine that the second storage pool of snapshots included a most-recently established snapshot or a least-recently established snapshot in selecting the second storage pool of snapshots.

Assignments (6)
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
RELEASE OF SECURITY INTEREST AT REEL 052888 FRAME 0177 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058965/0712 →
SECURITY INTEREST Recorded Jun 9, 2020
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 052888/0177 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 28, 2020
From: HGST NETHERLANDS B.V
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 052783/0631 →
CONFIRMATORY ASSIGNMENT Recorded Jan 21, 2016
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: HGST NETHERLANDS B.V.
Reel/Frame 037569/0134 →
Continuity (2)
Continuation 11485775 · Jul 13, 2006
Related Publication 20120109916A1 · May 3, 2012