IP Library › Granted Patent US 11,625,304
Granted Patent B2
US 11,625,304 · App. 16/396,518 · Granted Apr 11, 2023

Efficient method to find changed data between indexed data and new backup

Inventors: James Morton (Adamstown, MD); Lihui Su (Shanghai, CN); Yubing Zhang (Shanghai, CN); Ming Zhang (Shanghai, CN); Yujun Liang (Shanghai, CN)
Assignee: EMC IP HOLDING COMPANY LLC
G06F11/1451G06F9/45558G06F11/1469G06F16/953G06F11/1453
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 11,625,304
App. No.
16/396,518
Filed
Apr 26, 2019
Granted
Apr 11, 2023
Kind
B2
Art Unit
2169
USPC
707/706
Abstract

An apparatus, method, and system for updating a file index in a search engine in a data backup system to reflect file changes introduced in a new backup is disclosed. The operations comprise: generating a first external file, the first external file comprising file hashes for files already indexed in a file index in a search engine of a data backup storage system that are not associated with a deleted status; generating a second external file, the second external file comprising file hashes for files in a new backup; determining one or more file changes introduced in the new backup based on a comparison between the first external file and the second external file; and updating the file index in the search engine to reflect the one or more file changes introduced in the new backup.

Claims (35)

1. A computer-implemented method, comprising:

generating a first external file, the first external file comprising file hashes for files already indexed in a file index in a search engine of a data backup storage system that are not associated with a deleted status;

generating a second external file, the second external file comprising file hashes for files in a new backup;

determining one or more file changes introduced in the new backup based on a comparison between the file hashes in the first external file and the file hashes in the second external file; and

updating the file index in the search engine to reflect the one or more file changes introduced in the new backup.

2. The method of claim 1 , wherein the new backup is associated with a backup target indicative of a source of the new backup, and only file hashes for already-indexed files that are associated with the same backup target are included in the first external file.

3. The method of claim 2 , wherein the backup target comprises a directory name or a virtual machine (VM) name.

4. The method of claim 1 , wherein a file hash for each file is calculated based on a combination of a backup server identifier, a backup identifier, a file full path, and a time of last modification associated with the file.

5. The method of claim 1 , wherein the one or more file changes introduced in the new backup comprise one or more files newly added in the new backup, one or more files that have been deleted in the new backup, or a combination thereof.

6. The method of claim 5 , wherein updating the file index in the search engine to reflect the one or more file changes comprises performing at least one of adding one entry to the file index for each of the one or more files newly added in the new backup or associating a respective entry for each of the one or more files that have been deleted in the new backup with a deleted status.

7. The method of claim 1 , wherein the file hashes in the first and second external files are sorted based on their values before determining the one or more file changes.

8. A non-transitory machine-readable medium having instructions stored therein, which when executed by a processor, cause the processor to perform data indexing operations, the operations comprising:

generating a first external file, the first external file comprising file hashes for files already indexed in a file index in a search engine of a data backup storage system that are not associated with a deleted status;

generating a second external file, the second external file comprising file hashes for files in a new backup;

determining one or more file changes introduced in the new backup based on a comparison between the file hashes in the first external file and the file hashes in the second external file; and

updating the file index in the search engine to reflect the one or more file changes introduced in the new backup.

9. The non-transitory machine-readable medium of claim 8 , wherein the new backup is associated with a backup target indicative of a source of the new backup, and only file hashes for already-indexed files that are associated with the same backup target are included in the first external file.

10. The non-transitory machine-readable medium of claim 9 , wherein the backup target comprises a directory name or a virtual machine (VM) name.

11. The non-transitory machine-readable medium of claim 8 , wherein a file hash for each file is calculated based on a combination of a backup server identifier, a backup identifier, a file full path, and a time of last modification associated with the file.

12. The non-transitory machine-readable medium of claim 8 , wherein the one or more file changes introduced in the new backup comprise one or more files newly added in the new backup, one or more files that have been deleted in the new backup, or a combination thereof.

13. The non-transitory machine-readable medium of claim 12 , wherein updating the file index in the search engine to reflect the one or more file changes comprises performing at least one of adding one entry to the file index for each of the one or more files newly added in the new backup or associating a respective entry for each of the one or more files that have been deleted in the new backup with a deleted status.

14. The non-transitory machine-readable medium of claim 8 , wherein the file hashes in the first and second external files are sorted based on their values before determining the one or more file changes.

15. A data processing system, comprising:

a processor; and

a memory coupled to the processor to store instructions, which when executed by the processor, cause the processor to perform data storage operations, the operations including:

generating a first external file, the first external file comprising file hashes for files already indexed in a file index in a search engine of a data backup storage system that are not associated with a deleted status;

generating a second external file, the second external file comprising file hashes for files in a new backup;

determining one or more file changes introduced in the new backup based on a comparison between the file hashes in the first external file and the file hashes in the second external file; and

updating the file index in the search engine to reflect the one or more file changes introduced in the new backup.

16. The data processing system of claim 15 , wherein the new backup is associated with a backup target indicative of a source of the new backup, and only file hashes for already-indexed files that are associated with the same backup target are included in the first external file.

17. The data processing system of claim 16 , wherein the backup target comprises a directory name or a virtual machine (VM) name.

18. The data processing system of claim 15 , wherein a file hash for each file is calculated based on a combination of a backup server identifier, a backup identifier, a file full path, and a time of last modification associated with the file.

19. The data processing system of claim 15 , wherein the one or more file changes introduced in the new backup comprise one or more files newly added in the new backup, one or more files that have been deleted in the new backup, or a combination thereof.

20. The data processing system of claim 19 , wherein updating the file index in the search engine to reflect the one or more file changes comprises performing at least one of adding one entry to the file index for each of the one or more files newly added in the new backup or associating a respective entry for each of the one or more files that have been deleted in the new backup with a deleted status.

21. The data processing system of claim 15 , wherein the file hashes in the first and second external files are sorted based on their values before determining the one or more file changes.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (050724/0466) Recorded Jun 23, 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; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO WYSE TECHNOLOGY L.L.C.)
Reel/Frame 060753/0486 →
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 (053311/0169) Recorded Jun 23, 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
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST AT REEL 050405 FRAME 0534 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058001/0001 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
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 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 050724/0466 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050405/0534 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 29, 2019
From: MORTON, JAMES; SU, LIHUI; ZHANG, YUBING; ZHANG, MING; LIANG, YUJUN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 049019/0750 →
Continuity (1)
Related Publication 20200341854A1 · Oct 29, 2020