IP Library Granted Patent US 10,152,381
Granted Patent B1
US 10,152,381 · App. 15/498,670 · Granted Dec 11, 2018

Using storage defragmentation function to facilitate system checkpoint

Inventors: Felix Shvaiger (Brighton, MA); Anton Kucherov (Milford, MA); Zvi Schneider (Hod Hasharon, IL); Xiangping Chen (Sherborn, MA); Ying Hu (Northborough, MA)
Assignee: EMC IP Holding Company LLC
G06F11/1407G06F3/065G06F3/0665G06F3/0688G06F11/1451G06F3/067G06F13/4022G06F2201/84
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,152,381
App. No.
15/498,670
Granted
Dec 11, 2018
Kind
B1
Abstract

A computer-implemented method is provided for a storage system comprising a processor in operable communication with a storage device that is configured into a plurality of respective regions of storage space. A first defragmentation process is performed on at least a first region of the plurality of respective regions of storage space to free a first portion of storage space in the a respective first region, where the freed first portion is reserved for user data and metadata associated with I/O requests to the storage system that are generated during a first operation running on the storage system. The storage system is configured to ensure that, during the first operation, user data and metadata are routed towards the first freed portion and kept separate from a set of system checkpoint information, associated with a first state of the storage system, stored in a protected portion of storage space.

Claims (32)

1. A computer-implemented method, comprising

configuring a storage system comprising a processor in operable communication with a storage device, the storage system responsive to input/output (I/O) requests to the storage device from a host in operable communication with the storage system, the storage device configured into a plurality of respective regions of storage space;

performing a first defragmentation process on at least a first region of the plurality of respective regions of storage space, the first defragmentation process freeing a first portion of storage space in the a respective first region of storage space;

reserving the freed first portion of storage space on the storage device for user data and metadata associated with I/O requests to the storage system that are generated during a first operation running on the storage system; and

configuring the storage system to ensure that, during the first operation, user data and metadata are routed towards the first freed portion of storage space and kept separate from a set of system checkpoint information stored in a second portion of storage space on the storage device, the second portion comprising a protected portion of storage space.

2. The method of claim 1 , wherein the protected portion of storage space is configured to be separate and distinct from the freed first determined portion of storage space.

3. The method of claim 1 , further comprising dynamically performing the first defragmentation process and dynamically reserving the freed first portion of storage space while the storage system is in an operational mode.

4. The method of claim 1 , further comprising dynamically performing the first defragmentation process and dynamically reserving the freed first portion of storage space prior to a creation of the set of system checkpoint information.

5. The method of claim 1 , further comprising dynamically performing the first defragmentation process and dynamically reserving the freed first portion of storage space prior to performing the first operation.

6. The method of claim 1 , further comprising dynamically performing the first defragmentation process and dynamically reserving the freed first portion of storage space upon receiving a notification that either a set of system checkpoint information is to be created or that the first operation is to be run.

7. The method of claim 1 , wherein the set of system checkpoint information comprises at least one piece of information selected from the group consisting of: a consistent point in time image of the system, configuration of the system, logical volume mapping metadata, physical on disk layout metadata, user data, user metadata, information relating to the state of an application, and information relating to the state of the storage system.

8. The method of claim 1 , wherein the first operation comprises an operation associated with a risk of undesired alteration to at least a portion of information stored in the set of system checkpoint information.

9. The method of claim 1 , further comprising, if the first operation completes successfully, performing a second defragmentation process, the second defragmentation process configured to reincorporate at least a portion of the data stored in first freed portion of storage space into the protected portion of storage space.

10. The method of claim 1 , further comprising, if the first operation completes successfully, performing a second defragmentation process, the second defragmentation process configured to substantially erase the set of system checkpoint information stored in the protected portion of storage space.

11. The method of claim 1 , further comprising:

generating, on the system, the set of system checkpoint information; and

storing the set of system checkpoint information in the second portion of storage space.

12. The method of claim 1 , further comprising, if the first operation does not complete successfully, using the system checkpoint to restore at least a portion of the storage system to an operational state corresponding to a state of the storage system in existence before the first operation.

13. A system, comprising;

a processor; and

a non-volatile memory in operable communication with the processor and storing computer program code that when executed on the processor causes the processor to execute a process operable to perform the operations of:

configuring a storage system comprising the processor in operable communication with a storage device, the storage system responsive to input/output (I/O) requests to the storage device from a host in operable communication with the storage system, the storage device configured into a plurality of respective regions of storage space:

performing a first defragmentation process on at least a first region of the plurality of respective regions of storage space, the first defragmentation process freeing a first portion of storage space in the a respective first region of storage space;

reserving the freed first portion of storage space on the storage device for user data and metadata associated with I/O requests to the storage system that are generated during a first operation running on the storage system; and

configuring the storage system to ensure that, during the first operation, user data and metadata are routed towards the first freed portion of storage space and kept separate from a set of system checkpoint information stored in a second portion of storage space on the storage device, the second portion comprising a protected portion of storage space.

14. The system of claim 13 , further comprising computer program code that when executed on the processor causes the processor to execute a process operable to perform the operation of dynamically performing the first defragmentation process and dynamically reserving the freed first portion of storage space while the storage system is in an operational mode.

15. The system of claim 13 , further comprising computer program code that when executed on the processor causes the processor to execute a process operable to perform the operation of dynamically performing the first defragmentation process and dynamically reserving the freed first portion of storage space upon receiving a notification that either a set of system checkpoint information is to be created or that the first operation is to be run.

16. The system of claim 13 , further comprising computer program code that, when executed on the processor, causes the processor to execute a process operable to dynamically perform the first defragmentation process and dynamically reserve the freed first portion of storage space prior to a creation of the set of system checkpoint information.

17. The system of claim 13 further comprising computer program code that, when executed on the processor, causes the processor to execute a process operable to dynamically perform the first defragmentation process and dynamically reserve the freed first portion of storage space prior to performing the first operation.

18. The system of claim 14 , further comprising computer program code that when executed on the processor causes the processor to execute a process operable to perform the operation of, if the first operation completes successfully, performing a second defragmentation process, the second defragmentation process configured to reincorporate at least a portion of the data stored in first freed portion of storage space into the protected portion of storage space.

19. The system of claim 13 , further comprising computer program code that when executed on the processor causes the processor to execute a process operable to perform the operation of, if the first operation completes successfully, performing a second defragmentation process, the second defragmentation process configured to substantially erase the set of system checkpoint information stored in the protected portion of storage space.

20. The system of claim 13 , wherein the protected portion of storage space is configured to be separate and distinct from the freed first determined portion of storage space.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (042769/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 059803/0802 →
RELEASE OF SECURITY INTEREST AT REEL 042768 FRAME 0585 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058297/0536 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
PATENT SECURITY INTEREST (CREDIT) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 042768/0585 →
PATENT SECURITY INTEREST (NOTES) Recorded Jun 12, 2017
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; MOZY, INC.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 042769/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 25, 2017
From: SHVAIGER, FELIX; KUCHEROV, ANTON; SCHNEIDER, ZVI; CHEN, XIANGPING; HU, YING
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 042507/0010 →
Cited By (1)
US 12,585,409