IP Library Granted Patent US 8,805,902
Granted Patent B2
US 8,805,902 · App. 13/626,208 · Granted Aug 12, 2014

Managing snapshot storage pools

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,805,902
App. No.
13/626,208
Granted
Aug 12, 2014
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. One apparatus includes a logic module and a processor. The logic module is 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 is 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 (37)

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, wherein the ratio is determined when 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;

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 determining that the ratio is greater than the first predetermined threshold.

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

determining that the ratio is greater than a second predetermined threshold; and

transferring storage resources associated with a third storage pool of snapshots to the first storage pool of snapshots in response to determining that the ratio is greater than the second predetermined threshold.

3. 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.

4. The method of claim 3 , 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.

5. The method of claim 3 , 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.

6. The method of claim 3 , 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.

7. The method of claim 3 , 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 least-recently established snapshot.

8. A computer-readable 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, wherein the ratio is determined when 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;

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 determining that the ratio is greater than the first predetermined threshold.

9. The computer-readable memory of claim 8 , further comprising instructions for performing the steps of:

determining that the ratio is greater than a second predetermined threshold; and

transferring storage resources associated with a third storage pool of snapshots to the first storage pool of snapshots in response to determining that the ratio is greater than the second predetermined threshold.

10. The computer-readable storage memory of claim 9 , 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 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.

12. The computer-readable 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.

13. The computer-readable 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.

14. The computer-readable 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 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, the processor for:

determining, by the 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, wherein the ratio is determined when 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;

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 determining that the ratio is greater than the first predetermined threshold.

16. The system of claim 15 , the processor further for:

determining that the ratio is greater than a second predetermined threshold; and

transferring storage resources associated with a third storage pool of snapshots to the first storage pool of snapshots in response to determining that the ratio is greater than the second predetermined threshold.

17. The system of claim 16 , wherein the processor is further for 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.

18. The system of claim 17 , wherein the processor is further for determining 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.

19. The system of claim 17 , wherein the processor is further for determining 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.

20. The system of claim 17 , wherein the processor is further for determining 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 (5)
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 →
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 →
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 →