IP Library Granted Patent US 7,441,092
Granted Patent B2
US 7,441,092 · App. 11/407,798 · Granted Oct 21, 2008

Multi-client cluster-based backup and restore

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,441,092
App. No.
11/407,798
Granted
Oct 21, 2008
Kind
B2
Abstract

Backup and restore technology comprising a backup engine, one or more client backup modules coupled to the backup engine via a backup protocol, and a backup database coupled to the backup engine, the backup database including a set of clusters, the set of clusters forming one or more backups, wherein each cluster of the set of clusters is unique such that single-instance storage across clients is achieved.

Claims (24)

1. A backup method comprising:

calculating a set of new file record hashes;

creating a list of potentially changed clusters based at least in part on comparing the set of new file record hashes to a set of previous file record hashes;

calculating a set of current cluster hashes wherein each one of the set of current cluster hashes is calculated based on a corresponding one of a plurality of clusters of one or more storage devices, and wherein each one of the set of current cluster hashes uniquely identifies the corresponding one of the plurality of clusters, and wherein the calculating the set of current cluster hashes is based at least in part on the list of potentially changed clusters;

reducing the set of current cluster hashes to include only those not already stored in a backup database, resulting is a reduced set of cluster hashes; and

storing in the backup database a set of clusters of the plurality of clusters identified by the reduced set of cluster hashes wherein each cluster stored in the backup database is unique resulting in single-instance storage in the backup database.

2. The backup method of claim 1 further comprising:

building an exclusion list;

modifying the set of file record hashes based on the exclusion list, resulting in a modified set of file record hashes; and

storing the modified set of file record hashes as a new previous set of file record hashes.

3. The backup method of claim 1 further comprising:

building a current in-use cluster list;

excluding any clusters marked as not-in-use from the current in-use cluster list;

modifying the current in-use cluster list based on a fix-up list, resulting in a modified current in-use cluster list; and

calculating the set of current cluster hashes based at least in part on the modified current in-use cluster list.

4. The method of claim 1 further comprising establishing a backup protocol session between a client and a backup server.

5. The backup method of claim 1 embodied in computer-executable instructions on computer-storage media.

6. The backup method of claim 1 wherein the storing in the backup database includes a recoverable commit operation.

7. The backup method of claim 1 further comprising sorting the set of current cluster hashes.

8. The backup method of claim 7 wherein the sorting is performed by a virtual memory and cache-aware sort.

9. The method of claim 1 wherein the plurality of clusters are included on a single client.

10. The method of claim 1 wherein the plurality of clusters are included on a plurality of clients.

11. The method of claim 1 further comprising storing the reduced set of cluster hashes in the backup database.

12. The method of claim 1 wherein the calculating is performed using a hashing function that calculates a fixed-sized hash value from an arbitrarily-long input value, and wherein the input value is cluster data.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034542/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 18, 2006
From: LYON, JAMES M.
To: MICROSOFT CORPORATION
Reel/Frame 017952/0497 →