IP Library Granted Patent US 7,254,596
Granted Patent B2
US 7,254,596 · App. 10/780,683 · Granted Aug 7, 2007

Efficient computer file backup system and method

Assignee: DataCenterTechnologies N.V.
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 7,254,596
App. No.
10/780,683
Filed
Feb 19, 2004
Granted
Aug 7, 2007
Kind
B2
Art Unit
2161
USPC
707/204
Abstract

A system and method for efficiently backing up and restoring computer files to a central storage system. A hashing key is computed for each file to be backed up on a target computer. The hashing key is compared to a list of hashing keys stored locally to see if the local file has been previously backed up. If the hashing key is not listed locally, then the hashing key is compared to a list of hashing keys of centrally backed up files. Only if the hashing key is not present in both the local and the central list is the file backed up. Backed up files may be renamed to their hashing key for further efficiencies.

Claims (70)

1. A method for deciding whether a specific file on a target computer should be backed up to a central storage system, said method comprising the steps of:

computing a specific hashing key from the content of said specific file;

verifying if said specific hashing key is already present in a local database, wherein, for each computer file on said target computer which has been previously backed up, said local database comprises a record including:

a file hashing key computed from said computer file; and

a local file path in said target computer where said computer file should be restored, said file path being associated with said file hashing key;

if said specific hashing key is not present in said local database, backing up said specific file by performing the steps of:

creating a backup file which is a duplicate of said specific file;

renaming said backup file to said specific hashing key;

storing said renamed backup file in said central storage system; and

storing in said local database a new record including said specific hashing key and a specific path in said target computer where said specific file should be restored; and

if said specific hashing key is present in said local database not backing up said specific file in said central storage system.

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

verifying if said specific hashing key is already present in at least one central database of file hashing keys derived from computer files already backed up in said central storage system; and

backing up said specific file if and only if said specific hashing key is not present in said at least one central database of said central storage system.

3. The method according to claim 2 , wherein said target computer is connected to a LAN and further wherein said central storage system is connected to said LAN by a WAN.

4. The method according to claim 1 , wherein a plurality of target computers are connected with said central storage system, and further wherein said specific file is not backed up if it is already present in said central storage system as the result of a backup from any target computer.

5. The method according to claim 4 , wherein the location of said renamed backup file in said central storage system depends on said specific hashing key.

6. The method according to claim 5 , wherein said central storage system comprises a plurality of storage devices.

7. A method for restoring a specific file to a target computer, said method comprising the steps of:

requesting a specific hashing key corresponding to said specific file from a local database storing a previously computed hashing key for each backed up computer file;

requesting a specific path location associated with said specific hashing key from said local database;

using said specific hashing key to retrieve a backup file from a central storage server, said backup file being a duplicate of said specific file, wherein a name under which said backup file has been stored in said central storage server depends on said hashing key; and

saving said backup file to said specific path location on said target computer.

8. The method according to claim 7 , wherein the location at which said backup file has been stored in said central storage server depends on said hashing key.

9. A central storage system for backing up a specific file on a target computer comprising:

means for computing a specific hashing key from the content of said specific file;

means for verifying if said specific hashing key is already present in a local database, wherein, for each computer file on said target computer which has been previously backed up, said local database comprises a record including:

a file hashing key computed from said computer file; and

a local file path in said target computer where said computer file should be restored, said file path being associated with said file hashing key;

means for backing up said specific file if said specific hashing key is not present in said local database, said backing up comprising the steps of:

creating a backup file which is a duplicate of said specific file;

renaming said backup file to said specific hashing key;

storing said renamed backup file in said central storage system; and

storing in said local database a new record including said specific hashing key and a specific path in said target server where said specific file should be restored;

wherein, if said specific hashing key is present in said local database, said specific file is not backed up.

10. The central storage system according to claim 9 being a central storage system, and further comprising means for verifying if said specific hashing key is already present in at least one central database of said central storage system, said central database including file hashing keys derived from computer files already backed up in said central storage system, wherein said means for backing up is performed only if said specific hashing key is not present in said at least one central database.

11. The central storage system according to claim 10 , wherein said target computer is connected to a LAN and further wherein said central storage system is connected to said LAN by a WAN.

12. The central storage system according to claim 9 , wherein a plurality of target computers are connected with said central storage system, and further wherein said specific file is not backed up if it is already present in said central storage system as the result of a backup from any target computer.

13. The central storage system according to claim 12 , wherein the location of said renamed backup file in said central storage system depends on said specific hashing key.

14. The central storage system according to claim 9 , further comprising:

means for restoring said specific file from said central storage system to said target computer, comprising:

means for requesting said specific hashing key corresponding to said specific file from said central database;

means for requesting said specific path location associated with said specific hashing key from one of said local databases and said central database;

means for using said specific hashing key to retrieve said backup file from said system; and

means for saving said backup file on said target computer to said specific path location.

15. The central storage system of claim 14 , wherein, during said backing up, if said specific hashing key is not present in said local database, said backup file is renamed to said specific hashing key before storing said backup file in said central storage system, and further wherein, during said restoring, said backup file is renamed to the name of said specific file before saving said backup file to said target computer.

16. A computer program product stored on a computer-usable medium comprising computer-readable program means for causing said computer to perform a method for deciding whether a specific file on a target computer should be backed up to a central storage system, said method comprising the steps of:

computing a specific hashing key from the content of said specific file;

verifying if said specific hashing key is already present in a local database, wherein, for each computer file on said target computer which has been previously backed up, said local database comprises a record including:

a file hashing key computed from said computer file; and

a local file path in said target computer where said computer file should be restored, said file path being associated with said file hashing key;

if said specific hashing key is not present in said local database, backing up said specific file by performing the steps of:

creating a backup file which is a duplicate of said specific file;

renaming said backup file to said specific hashing key;

storing said renamed backup file in said central storage system; and

storing in said local database a new record including said specific hashing key and a specific path in said target computer where said specific file should be restored; and

if said specific hashing key is present in said local database not backing up said specific file in said central storage system.

17. The computer program product as recited in claim 16 , wherein the method performed by the computer further comprises:

verifying if said specific hashing key is already present in at least one central database of file hashing keys derived from computer files already backed up in said central storage system; and

backing up said specific file if and only if said specific hashing key is not present in said at least one central database of said central storage system.

18. The computer program product as recited in claim 17 , wherein said target computer is connected to a LAN and further wherein said central storage system is connected to said LAN by a WAN.

19. The computer program product as recited in claim 16 , wherein a plurality of target computers are connected with said central storage system, and further wherein said specific file is not backed up if it is already present in said central storage system as the result of a backup from any target computer.

20. The computer program product as recited in claim 19 , wherein the location of said renamed backup file in said central storage system depends on said specific hashing key.

21. The computer program product as recited in claim 20 , wherein said central storage system comprises a plurality of storage devices.

22. A computer program product stored on a computer-usable medium comprising computer-readable program means for performing a method for restoring a specific file to a target computer, said method comprising the steps of:

requesting a specific hashing key corresponding to said specific file from a local database storing a previously computed hashing key for each backed up computer file;

requesting a specific path location associated with said specific hashing key from said local database;

using said specific hashing key to retrieve a backup file from a central storage server, said backup file being a duplicate of said specific file, wherein a name under which said backup file has been stored in said central storage server depends on said hashing key; and

saving said backup file to said specific path location on said target computer.

23. The computer program product as recited in claim 22 , wherein the location at which said backup file has been stored in said central storage server depends on said hashing key.

Assignments (14)
AMENDMENT NO. 1 TO PATENT SECURITY AGREEMENT Recorded Apr 8, 2025
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 070779/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 26, 2025
From: VERITAS TECHNOLOGIES LLC
To: COHESITY, INC.
Reel/Frame 070335/0013 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2024
From: ACQUIOM AGENCY SERVICES LLC, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC (F/K/A VERITAS US IP HOLDINGS LLC)
Reel/Frame 069712/0090 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
SECURITY INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK. N.A.
Reel/Frame 069890/0001 →
ASSIGNMENT OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Nov 25, 2024
From: BANK OF AMERICA, N.A., AS ASSIGNOR
To: ACQUIOM AGENCY SERVICES LLC, AS ASSIGNEE
Reel/Frame 069440/0084 →
TERMINATION AND RELEASE OF SECURITY IN PATENTS AT R/F 037891/0726 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS US IP HOLDINGS, LLC
Reel/Frame 054535/0814 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
MERGER AND CHANGE OF NAME Recorded Apr 18, 2016
From: VERITAS US IP HOLDINGS LLC; VERITAS TECHNOLOGIES LLC
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038455/0752 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037891/0726 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037891/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: SYMANTEC CORPORATION
To: VERITAS US IP HOLDINGS LLC
Reel/Frame 037697/0412 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 14, 2011
From: DATACENTERTECHNOLOGIES N.V.
To: SYMANTEC CORPORATION
Reel/Frame 026589/0412 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 19, 2004
From: DE SPIEGELEER, KRISTOF
To: DATACENTERTECHNOLOGIES N.V
Reel/Frame 015009/0317 →
Priority Claims (1)
EP 01120041 · Aug 20, 2001 · regional
Continuity (2)
Continuation PCTEP020258800 · Mar 8, 2002
Related Publication 20040236803A1 · Nov 25, 2004