IP Library › Granted Patent US 8,010,505
Granted Patent B2
US 8,010,505 · App. 12/459,411 · Granted Aug 30, 2011

Efficient backup data retrieval

Assignee: EMC 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,010,505
App. No.
12/459,411
Filed
Jun 30, 2009
Granted
Aug 30, 2011
Kind
B2
Art Unit
2163
USPC
707/679
Abstract

Information is retrieved by receiving a list of one or more files to be restored. It is determined whether to obtain: (1) a contiguous group of blocks that includes a first segment of one or more blocks associated with the one or more files to be restored, a gap of one or more blocks that are not associated with the one or more files to be restored that is adjacent to the first segment, and a second segment of one or more blocks associated with the one or more files to be restored that is adjacent to the gap or (2) a contiguous group of blocks that includes only the first segment based at least in part on a length and/or number of blocks comprising the gap. The determined contiguous group of blocks is obtained.

Claims (41)

1. A method of retrieving information, comprising:

receiving, at a processor, a list of one or more files to be restored;

determining, at the processor, whether to obtain: (1) a contiguous group of blocks that includes a first segment of one or more blocks associated with the one or more files to be restored, a gap of one or more blocks that are not associated with the one or more files to be restored that is adjacent to the first segment, and a second segment of one or more blocks associated with the one or more files to be restored that is adjacent to the gap or (2) a contiguous group of blocks that includes only the first segment based at least in part on a length and/or number of blocks comprising the gap; and

obtaining the determined contiguous group of blocks.

2. The method of claim 1 , wherein determining is performed without consideration as to an amount of time.

3. The method of claim 1 , wherein determining includes obtaining a threshold and comparing the threshold to the length and/or number of blocks comprising the gap.

4. The method of claim 1 , wherein determining includes obtaining a threshold and comparing the threshold to a cumulative length and/or cumulative number of blocks associated with a plurality of gaps.

5. The method of claim 1 further comprising:

mapping the list of one or more files to one or more inode numbers; and

mapping the one or more inode numbers to one or more blocks.

6. The method of claim 5 further comprising sorting the one or more blocks resulting from the mapping by block location on backup media.

7. The method of claim 1 , wherein the gap includes at least one block associated with a file that is not being restored.

8. The method of claim 1 , wherein the gap includes at least one block associated with a version of a file that is not being restored.

9. A system for retrieving information, comprising:

a processor; and

a memory coupled with the processor, wherein the memory is configured to provide the processor with instructions which when executed cause the processor to:

receive a list of one or more files to be restored;

determine whether to obtain: (1) a contiguous group of blocks that includes a first segment of one or more blocks associated with the one or more files to be restored, a gap of one or more blocks that are not associated with the one or more files to be restored that is adjacent to the first segment, and a second segment of one or more blocks associated with the one or more files to be restored that is adjacent to the gap or (2) a contiguous group of blocks that includes only the first segment based at least in part on a length and/or number of blocks comprising the gap; and

obtain the determined contiguous group of blocks.

10. The system of claim 9 , wherein determining is performed without consideration as to an amount of time.

11. The system of claim 9 , wherein determining includes obtaining a threshold and comparing the threshold to the length and/or number of blocks comprising the gap.

12. The system of claim 9 , wherein determining includes obtaining a threshold and comparing the threshold to a cumulative length and/or cumulative number of blocks associated with a plurality of gaps.

13. The system of claim 9 , wherein the memory is configured to provide the processor with further instructions to:

map the list of one or more files to one or more inode numbers; and

map the one or more inode numbers to one or more blocks.

14. The system of claim 13 , wherein the memory is configured to provide the processor with further instructions to sort the one or more blocks resulting from the mapping by block location on backup media.

15. The system of claim 9 , wherein the gap includes at least one block associated with a file that is not being restored.

16. The system of claim 9 , wherein the gap includes at least one block associated with a version of a file that is not being restored.

17. A computer program product for retrieving information, the computer program product being embodied in a computer readable storage medium and comprising computer instructions for:

receiving, at a processor, a list of one or more files to be restored;

determining, at the processor, whether to obtain: (1) a contiguous group of blocks that includes a first segment of one or more blocks associated with the one or more files to be restored, a gap of one or more blocks that are not associated with the one or more files to be restored that is adjacent to the first segment, and a second segment of one or more blocks associated with the one or more files to be restored that is adjacent to the gap or (2) a contiguous group of blocks that includes only the first segment based at least in part on a length and/or number of blocks comprising the gap; and

obtaining the determined contiguous group of blocks.

18. The computer program product of claim 17 , wherein determining is performed without consideration as to an amount of time.

19. The computer program product of claim 17 , wherein the computer instructions for determining include computer instructions for obtaining a threshold and comparing the threshold to the length and/or number of blocks comprising the gap.

20. The computer program product of claim 17 , wherein the computer instructions for determining include computer instructions for obtaining a threshold and comparing the threshold to a cumulative length and/or cumulative number of blocks associated with a plurality of gaps.

21. The computer program product of claim 17 further comprising computer instructions for:

mapping the list of one or more files to one or more inode numbers; and

mapping the one or more inode numbers to one or more blocks.

22. The computer program product of claim 21 further comprising computer instructions for sorting the one or more blocks resulting from the mapping by block location on backup media.

23. The computer program product of claim 17 , wherein the gap includes at least one block associated with a file that is not being restored.

24. The computer program product of claim 17 , wherein the gap includes at least one block associated with a version of a file that is not being restored.

Assignments (10)
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 (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/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 Sep 29, 2016
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 040203/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2009
From: KUSHWAH, AJAY PRATAP SINGH
To: EMC CORPORATION
Reel/Frame 022944/0549 →
Continuity (2)
Continuation 11473475 · Jun 23, 2006
Related Publication 20090271456A1 · Oct 29, 2009