IP Library Granted Patent US 10,146,638
Granted Patent B1
US 10,146,638 · App. 15/192,838 · Granted Dec 4, 2018

Check point recovery based on identifying changed blocks for block-based backup files

Inventors: Pavan Kumar Dattatreya Ati (Bangalore, IN); Rangapuram Ravi Kishore Yadav (Bangalore, IN); Sridhar Surampudi (Rajahmundry, IN)
Assignee: EMC IP HOLDING COMPANY LLC
G06F11/1469G06F11/1451G06F2201/805G06F2201/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,146,638
App. No.
15/192,838
Granted
Dec 4, 2018
Kind
B1
Abstract

Check point recovery based on identifying changed blocks for block-based backup files is described. At least one data block is identified that changed for a system since a point in time in response to receiving a request to restore the system based on the point in time. At least one data block, corresponding to the identified at least one data block, is recovered from at least one backup file for the system, without reading each data block backed up via the at least one backup file for the system. The system is restored based on the recovered at least one data block.

Claims (30)

1. A system for check point recovery based on identifying changed blocks for block-based backup files, the system comprising:

a processor-based application, which when executed on a computer, will cause the processor to:

identify at least one data block that changed for a system since a point in time in response to receiving a request to restore the system based on the point in time, the at least one data block being identified to restore the system;

recover at least one data block, corresponding to the identified at least one data block, from at least one backup file for the system, without reading each data block backed up via the at least one backup file for the system; and

restore the system based on the recovered at least one data block.

2. The system of claim 1 , wherein identifying the at least one data block comprises using a changed block tracker to identify a data block that changed for the system since the point in time.

3. The system of claim 1 , wherein identifying the at least one data block comprises identifying a data block that changed for the system since the point in time and that is backed up via a first sequential backup file of the at least one backup file for the system, identifying a data block that changed for the system since the point in time and that is backed up via a last sequential backup file of the at least one backup file for the system, and identifying a data block that changed for the system since the point in time and that is backed up via any sequential backup file, of the at least one backup file for the system, that is between the first sequential backup file and the last sequential backup file.

4. The system of claim 1 , wherein identifying the at least data block comprises reading a block map corresponding to a data block of the at least one data block and corresponding to a backup file of the at least one backup file for the system.

5. The system of claim 4 , wherein the block map comprises a bitmap that is interleaved in a plurality of payload blocks, and one payload block of the plurality of payload blocks comprises data from the data block corresponding to the bitmap.

6. The system of claim 1 , wherein the point in time is associated with a backup file, of the at least one backup of the system, that sequentially precedes a change to the at least one data block that changed for the system since the point in time.

7. The system of claim 1 , wherein recovering the at least one data block, corresponding to the identified at least one data block, from the at least one backup file for the system, without reading each data block backed up via the at least one backup file for the system, comprises bypassing reading each data block that lacks correspondence to any data block that is identified as changed for the system since the point in time.

8. A computer-implemented method for check point recovery based on identifying changed blocks for block-based backup files, the method comprising:

identifying at least one data block that changed for a system since a point in time in response to receiving a request to restore the system based on the point in time, the at least one data block being identified to restore the system;

recovering at least one data block, corresponding to the identified at least one data block, from at least one backup file for the system, without reading each data block backed up via the at least one backup file for the system; and

restoring the system based on the recovered at least one data block.

9. The method of claim 8 , wherein identifying the at least one data block comprises using a changed block tracker to identify a data block that changed for the system since the point in time.

10. The method of claim 8 , wherein identifying the at least one data block comprises identifying a data block that changed for the system since the point in time and that is backed up via a first sequential backup file of the at least one backup file for the system, identifying a data block that changed for the system since the point in time and that is backed up via a last sequential backup file of the at least one backup file for the system, and identifying a data block that changed for the system since the point in time and that is backed up via any sequential backup file, of the at least one backup file for the system, that is between the first sequential backup file and the last sequential backup file.

11. The method of claim 8 , wherein identifying the at least data block comprises reading a block map corresponding to a data block of the at least one data block and corresponding to a backup file of the at least one backup file for the system.

12. The method of claim 11 , wherein the block map comprises a bitmap that is interleaved in a plurality of payload blocks, and one payload block of the plurality of payload blocks comprises data from the data block corresponding to the bitmap.

13. The method of claim 8 , wherein the point in time is associated with a backup file, of the at least one backup of the system, that sequentially precedes a change to the at least one data block that changed for the system since the point in time.

14. The method of claim 8 , wherein recovering the at least one data block, corresponding to the identified at least one data block, from the at least one backup file for the system, without reading each data block backed up via the at least one backup file for the system, comprises bypassing reading each data block that lacks identification as a data block that changed for the system since the point in time.

15. A computer program product, comprising a non-transitory computer-readable medium having a computer-readable program code embodied therein to be executed by one or more processors, the program code including instructions to:

identify at least one data block that changed for a system since a point in time in response to receiving a request to restore the system based on the point in time, the at least one data block being identified to restore the system;

recover at least one data block, corresponding to the identified at least one data block, from at least one backup file for the system, without reading each data block backed up via the at least one backup file for the system; and

restore the system based on the recovered at least one data block.

16. The computer program product of claim 15 , wherein identifying the at least one data block comprises using a changed block tracker to identify a data block that changed for the system since the point in time.

17. The computer program product of claim 15 , wherein identifying the at least one data block comprises identifying a data block that changed for the system since the point in time and that is backed up via a first sequential backup file of the at least one backup file for the system, identifying a data block that changed for the system since the point in time and that is backed up via a last sequential backup file of the at least one backup file for the system, and identifying a data block that changed for the system since the point in time and that is backed up via any sequential backup file, of the at least one backup file for the system, that is between the first sequential backup file and the last sequential backup file.

18. The computer program product of claim 15 , wherein identifying the at least data block comprises reading a block map corresponding to a data block of the at least one data block and corresponding to a backup file of the at least one backup file for the system, and wherein the block map comprises a bitmap that is interleaved in a plurality of payload blocks, and one payload block of the plurality of payload blocks comprises data from the data block corresponding to the bitmap.

19. The computer program product of claim 15 , wherein the point in time is associated with a backup file, of the at least one backup of the system, that sequentially precedes a change to the at least one data block that changed for the system since the point in time.

20. The computer program product of claim 15 , wherein recovering the at least one data block, corresponding to the identified at least one data block, from the at least one backup file for the system, without reading each data block backed up via the at least one backup file for the system, comprises bypassing reading each data block that lacks identification as a data block that changed for the system since the point in time.

Assignments (5)
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 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 3, 2017
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 041872/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 18, 2016
From: ATI, PAVAN KUMAR DATTATREYA; YADAV, RANGAPURAM RAVI KISHORE; SURAMPUDI, SRIDHAR
To: EMC CORPORATION
Reel/Frame 039179/0595 →
Cited By (1)
US 12,407,651