Search Images Maps Play YouTube News Gmail Drive More »
Advanced Patent Search | Web History | Sign in

Patents

A system and method backs up computer files to backup drives connected to multiple computer systems. Each file in a backup set is allocated to one or more backup subsets for each of the multiple computer systems. The files can be allocated in an even number across each subset, allocated to evenly spread the number of bytes to each subset, or, using the capacity of each of the multiple computer systems, allocated so that each computer system can complete backing up the files allocated to it in approximately the same amount of time. The system can restrict the number of bytes continuously required from a single disk by one of the backup machines from exceeding a threshold limit. Each of the multiple computer systems is then directed to, and the computer systems do, back up files in one or more subsets, which may be allocated to that computer system.

InventorsGregory Pongracz, Steven Wertheimer, William Bridge
Original AssigneeOracle Corporation
Current U.S. Classification1/1; 707/999.204; 711/162
International Classification: G06F 1200

View patent at USPTO
Search USPTO Assignment Database

Citations

Cited PatentFiling dateIssue dateOriginal AssigneeTitle
US5515502Sep 30, 1993May 7, 1996Sybase, Inc.Data backup system with methods for stripe affinity backup to multiple archive devices
US5721916Feb 26, 1997Feb 24, 1998Microsoft CorporationMethod and system for shadowing file system structures from multiple types of networks
US5790886Dec 5, 1995Aug 4, 1998International Business Machines CorporationMethod and system for automated data storage system space allocation utilizing prioritized data set parameters
US5799322Jan 30, 1997Aug 25, 1998Tandem Computer, Inc.System and method for stopping updates at a specified timestamp in a remote duplicate database facility
US5819296Oct 31, 1996Oct 6, 1998VERITAS Software CorporationMethod and apparatus for moving large numbers of data files between computer systems using import and export processes employing a directory of file handles
US5832522May 22, 1996Nov 3, 1998Kodak LimitedData storage management for network interconnected processors
US5857193Jun 13, 1997Jan 5, 1999Centralized audiotext polling system
US5857208May 31, 1996Jan 5, 1999EMC CorporationMethod and apparatus for performing point in time backup operation in a computer system
US5860122Nov 12, 1996Jan 12, 1999Matsushita Electric Industrial Co., Ltd.Backup unit including identifier conversion means

Referenced by

Citing PatentFiling dateIssue dateOriginal AssigneeTitle
US6240427Jan 5, 1999May 29, 2001Advanced Micro Devices, Inc.Method and apparatus for archiving and deleting large data sets
US6374267Aug 13, 1999Apr 16, 2002Unisys CorporationDatabase backup system and method utilizing numerically identified files for incremental dumping
US6411969Aug 13, 1999Jun 25, 2002Unisys CorporationEnhanced system and method for management of system database utilities
US6415300Jul 6, 1999Jul 2, 2002Syncsort IncorporatedMethod of performing a high-performance backup which gains efficiency by reading input file blocks sequentially
US6505216Oct 1, 1999Jan 7, 2003EMC CorporationMethods and apparatus for backing-up and restoring files using multiple trails
US6606693Jun 20, 2002Aug 12, 2003Method and system for long-term digital data storage
US6625625Apr 4, 2000Sep 23, 2003Hitachi, Ltd.System and method for backup and restoring by utilizing common and unique portions of data
US6678700Apr 27, 2000Jan 13, 2004General AtomicsSystem of and method for transparent management of data objects in containers across distributed heterogenous resources
US6708227Apr 24, 2000Mar 16, 2004Microsoft CorporationMethod and system for providing common coordination and administration of multiple snapshot providers
US6910112Jun 25, 2004Jun 21, 2005Microsoft CorporationSystem and method for backing up and restoring data
US6948038Jul 24, 2001Sep 20, 2005Microsoft CorporationSystem and method for backing up and restoring data
US6959368Jun 29, 1999Oct 25, 2005EMC CorporationMethod and apparatus for duplicating computer backup data
US6981007Nov 6, 2000Dec 27, 2005Onsite backup for internet-based data processing
US7054892Dec 23, 1999May 30, 2006EMC CorporationMethod and apparatus for managing information related to storage activities of data storage systems
US7162599Nov 24, 2004Jan 9, 2007Microsoft CorporationSystem and method for backing up and restoring data
US7206911Feb 25, 2004Apr 17, 2007International Business Machines CorporationMethod, system, and program for a system architecture for an arbitrary number of backup components
US7213158Jun 28, 2002May 1, 2007Lenovo (Singapore) Pte. Ltd.Distributed autonomic backup
US7269604Oct 24, 2003Sep 11, 2007General AtomicsSystem of and method for transparent management of data objects in containers across distributed heterogenous resources
US7346636Feb 14, 2006Mar 18, 2008EMC CorporationMethod and apparatus for managing information related to storage activities of data storage systems
US7444485May 23, 2005Oct 28, 2008EMC CorporationMethod and apparatus for duplicating computer backup data
US7475099Feb 25, 2004Jan 6, 2009International Business Machines CorporationPredictive algorithm for load balancing data transfers across components
US7478386May 3, 2005Jan 13, 2009International Business Machines CorporationResource-conservative installation of compressed archives
US7546305Apr 13, 2001Jun 9, 2009Oracle International CorporationFile archival
US7636916May 5, 2004Dec 22, 2009International Business Machines CorporationSelf-optimizing workload distribution among virtual storage controllers
US7647364Sep 9, 2005Jan 12, 2010WhitServe LLCOnsite backup of internet-based data in a requested format
US7698520Mar 12, 2007Apr 13, 2010Seiko Epson CorporationMethod for processing backup, devices for backup processing, and storage mediums for storing a program for operating a backup processing device
US7801850May 21, 2007Sep 21, 2010General AtomicsSystem of and method for transparent management of data objects in containers across distributed heterogenous resources
US7809898May 18, 2004Oct 5, 2010Symantec Operating CorporationDetecting and repairing inconsistencies in storage mirrors
US7831561May 18, 2004Nov 9, 2010Oracle International CorporationAutomated disk-oriented backups
US7925628Nov 17, 2009Apr 12, 2011WhitServe LLCInternet-based data processing system with onsite backup
US7974951Jul 2, 2010Jul 5, 2011WhitServe LLCOnsite backup for third party internet-based systems
US8027951Mar 9, 2008Sep 27, 2011International Business Machines CorporationPredictive algorithm for load balancing data transfers across components

Claims

1. An apparatus for backing up a plurality of files, comprising:

a controller machine having an input operatively coupled to receive at least one backup set comprising at least one identifier of the files and to receive at least one set of information corresponding to a backup drive, the controller machine for allocating the at least one identifier in the at least one backup set into a plurality of drive backup sets, and for transmitting the drive backup sets to an output; and
at least one backup machine having an input coupled to the controller machine output, for receiving at least one drive backup set and for retrieving files corresponding to the identifiers in the drive backup set and transmitting said files to a backup drive for storage.

2. A method of backing up files, comprising:

receiving a backup set comprising a description of a plurality of files to be backed up;
allocating file identifiers of the plurality of files to a plurality of backup subsets;
providing the file identifiers in at least a first one of said plurality of backup subsets so as to cause the files corresponding to the file identifiers in the at least first one of said plurality of backup subsets to be copied onto a first backup media; and
providing the file identifiers in at least a second, different from the first, one of said plurality of backup subsets so as to cause the files corresponding to the file identifiers in the at least second one of said plurality of backup subsets to be copied onto a second backup media different from the first backup media.

3. The method of claim 2, wherein the allocating step comprises assigning substantially a same number of file identifiers to each of a plurality of the backup subsets.

4. The method of claim 3, wherein the assigning step comprises, for each of a plurality of the backup subsets, selecting at random a plurality of file identifiers from file identifiers corresponding to the backup set.

5. The method of claim 3, wherein the assigning step comprises, for each of a plurality of the backup subsets, selecting a plurality of file identifiers having a sequential order according to the first backup set.

6. The method of claim 2, wherein the allocating step comprises assigning approximately a same number of bytes to each of a plurality of the backup subsets.

7. The method of claim 2, wherein the allocating step comprises identifying a backup subsystem from a plurality of backup subsystems capable of most efficiently backing up each of a plurality of files.

8. The method of claim 2, wherein:

the file identifiers in the first one of the plurality of backup subsets are provided to a first computer system; and
the file identifiers in the second one of the plurality of backup subsets are provided to a second computer system different from the first computer system.

9. The method of claim 8, wherein:

the file identifiers in the first one of the plurality of backup subsets are provided to the first computer system in response to a plurality of requests received from the first computer system; and
the file identifiers in the second one of the plurality of backup subsets are provided to the second computer system in response to a plurality of requests received from the second computer system.

10. A computer program product comprising a computer useable medium having computer readable program code embodied therein for backing up files, the computer program product comprising:

computer readable program code devices configured to cause a computer to receive a backup set comprising a description of a plurality of files to be backed up;
computer readable program code devices configured to cause a computer to allocate file identifiers of the plurality of files to a plurality of backup subsets;
computer readable program code devices configured to cause a computer to provide the file identifiers in at least a first one of said plurality of backup subsets so as to cause the files corresponding to the file identifiers in the at least first one of said plurality of backup subsets to be copied onto a first backup media; and
computer readable program code devices configured to cause a computer to provide the file identifiers in at least a second, different from the first, one of said plurality of backup subsets so as to cause the files corresponding to the file identifiers in the at least second one of said plurality of backup subsets to be copied onto a second backup media different from the first backup media.

11. The computer program product of claim 10, wherein the computer readable program code devices configured to cause a computer to allocate comprise computer readable program code devices configured to cause a computer to assign substantially a same number of file identifiers to each of a plurality of the backup subsets.

12. The computer program product of claim 11, wherein the computer readable program code devices configured to cause a computer to assign comprise computer readable program code devices configured to cause a computer to, for each of a plurality of the backup subsets, select at random a plurality of file identifiers from file identifiers corresponding to the backup set.

13. The computer program product of claim 11, wherein the computer readable program code devices configured to cause a computer to assign comprise computer readable program code devices configured to cause a computer to, for each of a plurality of the backup subsets, select a plurality of file identifiers having a sequential order according to the first backup set.

14. The computer program product of claim 10, wherein the computer readable program code devices configured to cause a computer to allocate comprise computer readable program code devices configured to cause a computer to assign approximately a same number of bytes to each of a plurality of the backup subsets.

15. The computer program product of claim 10, wherein the computer readable program code devices configured to cause a computer to allocate comprise computer readable program code devices configured to cause a computer to identify a backup subsystem from a plurality of backup subsystems capable of most efficiently backing up each of a plurality of files.

16. The computer program product of claim 10, wherein:

the file identifiers in the first one of the plurality of backup subsets are provided to a first computer system; and
the file identifiers in the second one of the plurality of backup subsets are provided to a second computer system different from the first computer system.

17. The computer program product of claim 16, wherein:

the file identifiers in the first one of the plurality of backup subsets are provided to the first computer system in response to a plurality of requests received from the first computer system; and
the file identifiers in the second one of the plurality of backup subsets are provided to the second computer system in response to a plurality of requests received from the second computer system.