IP Library Granted Patent US 7,685,459
Granted Patent B1
US 7,685,459 · App. 11/403,379 · Granted Mar 23, 2010

Parallel backup

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,685,459
App. No.
11/403,379
Filed
Apr 13, 2006
Granted
Mar 23, 2010
Kind
B1
Art Unit
2113
USPC
714/6
Abstract

A backup system can be provided, which system can comprise an identifier operable to identify a data object for possible backup and a generator operable to generate an identity representation for the data object on the basis of the content thereof. The identity representation can be transmitted to a backup store where it can be tested against identity representations for previously stored objects. The system can also comprise a receiver operable to receive from the backup store an indication of whether the data object described by the identity representation has previously been stored at the backup store. The system can be operable to transmit the data object to the backup store in the event that the data object described by the identity representation has not previously been stored at the backup store.

Claims (52)

1. A networked backup system including:

a backup agent and at least two backup servers;

wherein the backup agent is configured to run on a computer system and is further configured to:

identify a first data object accessible to the computer system for possible backup;

generate a first identity representation corresponding to the identified first data object based on the content thereof;

transmit the first identity representation;

select a first one of the at least two backup servers, based at least in part, on a value of the first identity representation being within a first predetermined range of values but not a second predetermined range of values; and

transmit a backup copy of the first data object to the selected first backup server based on information received in response to transmitting the first identity representation, wherein the information received in response to transmitting the first identity representation indicates that the contents of the first data object are not backed up by the first backup server.

2. The system of claim 1 , comprising a plurality of backup agents, each configured to run on a respective one of a plurality computer systems;

wherein each of the plurality of backup agents is configured to select one but not another of the one or more backup servers for possible backup of a data object based on a value of an identity representation corresponding to the data object being within the first predetermined range of values.

3. The system of claim 1 , wherein the backup agent is configured to generate as the first identity representation a result from applying a hash function to the first data object.

4. The system of claim 1 , wherein the backup agent is operable to identify a data object for possible backup based, at least in part, on whether the data object is locally unique to a file system associated with the computer system.

5. The system of claim 1 , wherein the first data object is a file.

6. The backup system of claim 1 , wherein the first data object is an email data file including a plurality of emails, and wherein the backup agent is configured to transmit backup copies of first ones of the plurality of emails but not second ones of the plurality of emails to the first backup server in response to an indication that at least one of the second emails had not previously been stored at the first backup server and that all of the first emails had previously been stored at the backup store.

7. The backup system of claim 1 , wherein the backup agent is further configured to:

identify a second data object for possible backup;

generate a second identity representation, wherein the second identity representation corresponds to the second data object;

transmit the second identity representation;

select a second one of the at least two backup servers, based at least in part, on a value of the second identity representation being within the second predetermined range of values but not the first predetermined range of values; and

transmit a backup copy of the second data object to the selected second backup server based on information received in response to transmitting the second identity representation, wherein the information received in response to transmitting the second identity representation indicates that the contents of the second data object are not backed up by the second backup server.

8. A computer-accessible storage medium storing program instructions executable to implement a backup agent,

wherein the backup agent is configured to run on a computer system and is further configured to:

identify a first data object accessible to the computer system for possible backup;

generate a first identity representation corresponding to the identified first data object based on the content thereof;

transmit the first identity representation;

select a first one of at least two backup servers, based at least in part, on a value of the first identity representation being within a first predetermined range of values but not a second predetermined range of values; and

transmit a backup copy of the first data object to the selected first backup server based on information received in response to transmitting the first identity representation, wherein the information received in response to transmitting the first identity representation indicates that the contents of the first data object are not backed up by the first backup server.

9. The computer-accessible storage medium of claim 8 , wherein the backup agent is configured to generate as the first identity representation a result from applying a hash function to the first data object.

10. The computer-accessible storage medium of claim 8 , wherein the backup agent is operable to identify a data object for possible backup based, at least in part, on whether the data object is locally unique to a file system associated with the computer system.

11. The computer-accessible storage medium of claim 8 , wherein the first data object is a file.

12. The computer-accessible storage medium of claim 8 , wherein the backup agent is further configured to:

identify a second data object for possible backup;

generate a second identity representation, wherein the second identity representation corresponds to the second data object;

transmit the second identity representation;

select a second one of the at least two backup servers, based at least in part, on a value of the second identity representation being within the second predetermined range of values but not the first predetermined range of values; and

transmit a backup copy of the second data object to the selected second backup server based on information received in response to transmitting the second identity representation, wherein the information received in response to transmitting the second identity representation indicates that the contents of the second data object are not backed up by the second backup server.

13. A computer-implemented method comprising:

identifying a first data object accessible to a computer system for possible backup;

generating a first identity representation corresponding to the identified first data object based on the content thereof;

transmitting the first identity representation;

selecting a first one of at least two backup server computers, based at least in part, on a value of the first identity representation being within a first predetermined range of values but not a second predetermined range of values; and

transmitting a backup copy of the first data object to the selected first backup server computer based on information received in response to transmitting the first identity representation, wherein the information received in response to transmitting the first identity representation indicates that the contents of the first data object are not backed up by the first backup server computer.

14. The computer-implemented method of claim 13 , wherein the first identity representation is generated by applying a hash function to the first data object.

15. The computer-implemented method of claim 13 , further comprising:

identifying a data object for possible backup based, at least in part, on whether the data object is locally unique to a file system associated with the computer system.

16. The computer-implemented method of claim 13 , wherein the first data object is a file.

17. The computer-implemented method of claim 13 , further comprising:

identifying a second data object for possible backup;

generating a second identity representation, wherein the second identity representation corresponds to the second data object;

transmitting the second identity representation;

selecting a second one of the at least two backup server computers, based at least in part, on a value of the second identity representation being within the second predetermined range of values but not the first predetermined range of values; and

transmitting a backup copy of the second data object to the selected second backup server computer based on information received in response to transmitting the second identity representation, wherein the information received in response to transmitting the second identity representation indicates that the contents of the second data object are not backed up by the second backup server computer.

Assignments (15)
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 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE PREVIOUSLY RECORDED ON REEL 019872 FRAME 979. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNEE IS SYMANTEC OPERATING CORPORATION. Recorded Mar 5, 2012
From: VERITAS OPERATING CORPORATION
To: SYMANTEC OPERATING CORPORATION
Reel/Frame 027819/0462 →
CHANGE OF NAME Recorded Sep 26, 2007
From: VERITAS OPERATING CORPORATION
To: SYMANTEC CORPORATION
Reel/Frame 019872/0979 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 24, 2007
From: DE SPIEGELEER, KRISTOF; D'HONDT, KOEN
To: VERITAS OPERATING CORPORATION
Reel/Frame 019743/0567 →