Hierarchical systems and methods for performing data storage operations

- CommVault Systems, Inc.

The invention is a hierarchical backup system. The interconnected network computing devices are put into groups of backup cells. A backup cell has a manager software agent responsible maintaining and initiating a backup regime for the network computing devices in the backup cell. The backups are directed to backup devices within the backup cell. Several backup cells can be defined. A manager software agent for a particular cell may be placed into contact with the manager software agent of another cell, by which information about the cells may be passed back and forth. Additionally, one of the software agents may be given administrative control over another software agent with which it is in communication.

Skip to: Description  ·  Claims  ·  References Cited  · Patent History  ·  Patent History
Description
RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 12/109,201, entitled “HIERARCHICAL SYSTEMS AND METHODS FOR PERFORMING DATA STORAGE OPERATIONS”, filed Apr. 24, 2008, which is a continuation of U.S. patent application Ser. No. 09/354,058, entitled “HIERARCHICAL BACKUP AND RETRIEVAL SYSTEM,” filed on Jul. 15, 1999, which are hereby incorporated herein by reference in their entireties.

This application is also related to U.S. patent application Ser. No. 09/354,063, entitled “MODULAR BACKUP AND RETRIEVAL SYSTEM”, filed on Jul. 15, 1999, which is hereby incorporated herein by reference in its entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention is directed to storage and retrieval systems. In particular, the invention is directed towards a hierarchical storage and retrieval system for a computer or a series of interconnected computers.

2. Description of Related Art

Conventional backup devices usually employ a monolithic backup and retrieval system servicing a single server with attached storage devices. These systems usually control all aspects of a data backup or retrieval, including timing the backup, directing the files to be backed up, directing the mode of the archival request, and directing the storage are not scalable and often direct only one type of backup and retrieval system, whether it is a network backup or a single machine backup.

If a backup software program failed for a particular computing device, a chance exists that the information for the backup suite would also be lost. Information about the activities of the backup program may be corrupted or lost. Additionally, without reinstallation, the backup program could not direct the backup of the particular computing device, and important information may not be backed up until the re-establishment of the backup program on the computing device.

Further, with distributed computing devices, it is necessary to micromanage each backup program on each computing device to maintain consistency in the backup activities of all backup programs. No external control can be asserted over multiple backup programs from a centralized location. Many other problems and disadvantages of the prior art will become apparent to one skilled in the art after comparing such prior art with the present invention as described herein.

SUMMARY OF THE INVENTION

Various aspects of the present invention may be found in a backup system for a network computing system. The network computer system has a first network device and a second network device. The backup system has a first software agent operating on a first network device on the network computing system. The first software agent is communicatively coupled to at least one backup device. The first software agent maintains operational parameters for the backup regime for the network computer system. The first software agent makes archival requests directed to the backup device or devices to initiate archival requests, including backups and restores.

A second software agent, operating on the second network device, supervises the operation of the first software agent. The second software agent is able to initiate archival function requests to the backup device or devices independent from the first software agent. Additionally, the second software agent may make an archival request directly to the first software agent, which then initiates the actual request directed to the backup device. The backup system of claim 1 wherein the first software agent is responsive to archival function requests from the second software agent. Or, the second software agent may change the operational parameters of the first software agent, thus allowing the second software agent to set administrative control of the backup of the network computing devices.

The first software agent communicates information on the status of the backup device or devices that it is responsible for to the second software agent. The first software agent may also communicate the status of the network computing devices that it is responsible for the backup of to the second software agent. This allows the second software agent to stand in for the first software agent when the first software agent is unable to perform at its full functionality. The second software agent is able to manage the backup of the network computing devices that the first software agent is responsible for when the first software agent is unable to do so.

In an exemplary embodiment, the network computer system has a first group of network computing devices. A manager software component runs on a network device and is responsible for managing parameters describing the archival characteristics of the first group of network devices, as well as able to initiate archival requests for those network computing devices.

The manager software component is communicatively coupled to at least one, possibly more, backup devices that physically perform the archival requests at the behest of instructions from the manager software component. A second software component supervises the manager software component, and is able to initiate a change in the operational parameters as described by the manager software component. Thus, the second software component may administer the characteristics of the backup policy of the manager software component.

In one embodiment, the second software component executes on a second network device, or it may also execute on the network device on which the manager component is executing. In an embodiment, the second software component is itself a manager software component responsible for the backup policies of a second group of network devices.

Or, the manager software component can operate the backup activities of a backup cell. Additionally, the second software component can operate the backup activities of a second backup cell, as well as manage or supervise the manager software component operating the first cell. Thus, a hierarchical structure in a backup system can be defined.

In another embodiment, the network computer system has a first group of network devices. The backup system has defined domains.

The first domain has a first manager software agent executing on a first network computing device. The first manager software agent is responsible for managing backup activities for the first group of network devices. The backup activities are coordinated with a backup device or devices that are in communication with the first manager software agent. These backup devices respond to the archival requests of the first manager software agent to carry out a backup policy for the first group of network devices.

A second domain has a second software agent, which administers the activities of the first manager software agent. The second software agent receives information on the first domain, and as such, the second software agent may operate the backup activities of the first domain.

The second software agent can manage a second group of network devices in the second domain in a similar manner to the first manager software agent operating and managing the first domain. As such, many other domains can be defined, and may be placed in communication with other domains. The manager software agent of each domain may be responsible for administratively managing other domains, and may in turn be managed by manager software agents in other domains. Many different control structures can be built with this interconnectivity of domains.

The information on a domain may be passed to another manager software agent responsible for another domain. The parent manager software agent may be able to pass instructions to the child domain and its manager software agent. As such, the parent manager software agent can operate the domain, or may be able to administer the child manager software agent's management of the domain.

Further, the second manager software agent may execute on the same network device as the first manager software agent. Alternatively, the second manager software agent may execute on a different network device as the first manager software agent.

Other aspects of the present invention will become apparent with further reference to the drawings and specification that follow.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a hierarchical network backup system according to the invention.

FIG. 2 is functional block diagram of an embodiment of the hierarchical backup system of FIG. 1 embodying data transfer between the components comprising the individual backup cell and the transfer of data outside of the backup cell.

FIG. 3 is a block diagram detailing the use of the manager component of FIG. 1 as a virtual manager component for a plurality of virtual backup cells.

FIG. 4 is a logical block diagram of the resulting backup cells of the network system depicted in FIG. 3.

FIG. 5 is a block diagram of an exemplary hierarchical backup network according to the invention.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 is a block diagram of a hierarchical network backup system according to the invention. A backup cell 100 comprises a plurality of network devices 110 (1), 120 (2), and 130 (3) that are to be backed up. The backups of the network devices are made to the attached backup devices 112, 122, and 132.

The network computing device 110 (1) contains a first manager component such as manager component 114. The first manager component 114 is a software agent responsible for maintaining backup parameters of the backups in the backup cell 100, and initiating a backup policy for the attached network computing devices according to those parameters. The parameters can include schedules of backups, aging policies, pruning policies, and backup media usage policies. Thus, through the operation of the first manager component 114, an administrator can define the characteristics of the backup actions for the network computing devices associated with the backup cell 100.

Connected to and in communication with the backup cell 100 is a backup cell 150, comprising a plurality of network devices 160 (4), 170 (5), and 180 (6). These network devices are also subject to backing up to the backup devices 162, 172, and 182.

The network computing device 160 (4) contains a second manager component such as manager component 164 that is responsible for the backup parameters of the backups in the backup cell 150. The second manager component 164 is similar in operation and in functionality to the first manager component 114 in the backup cell 100. Thus, through the operation of the second manager component 164, an administrator can define the characteristics of the backup actions for the backup cell 100.

In the case where the network 140 connecting the network devices 110 (1), 120 (2), and 130 (3) is not suitable based on speed and/or reliability, the size and scope of the backup cell 100 may be limited. Or, the site at which the backup cell 100 is physically located may not have an administrator present with the background, ability, or authority to modify the backup parameters of the backup cell 100. Or, having a single point of failure, namely the network device 110 (1) or the first manager component 114 may not be an acceptable alternative to the user of the backup cell 100.

As such, the second manager component 164 of the backup cell 150 is placed in communication with the backup cell 100. The second manager component 164 running on the network device 160 (4) is given the authority, power, and ability to maintain and control the backup parameters and actions on the backup cell 100. Further, information on the status of the network devices, the backup devices, and on the first manager component 114 is made known to the second manager component 164. Thus, the backup of the network devices 110 (1), 120 (2), and 130 (3) may be maintained and controlled from another software agent at another location, such as the second manager component 164. As such, alternative administration may be exercised on the backup characteristics and actions of the backup cell 100 from another backup cell.

Routine activities within the backup cell 100 can take place with little or no interaction with the second remote manager component 164. These routine activities include backups of and restorations to the network devices 110 (1), 120 (2), and 130 (3), and administration and/or configuration of the parameters of the archival functionality of the backup cell 100.

Alternatively, interaction with the second remote manager component 164 could take place when an administrator who is logged into the network device 160 (4) would like to administer activity that takes place in the backup cell 100. Or, splitting of administrative functionality between the first and second manager components 114 and 164 could take place, thus centralizing some or all of the definition of the functionality of the backup schemes to a common set of parameters across associated backup cells. Or, the administrative authority of the manager components may be highly decentralized, and the alternative control of another backup cell may be used only when the manager component of another backup has failed for some reason.

Information on the individual components making up the backup cell 100 can be communicated to the second manager component 164. Thus, the second manager component 164 could, to varying degrees as defined by operational needs, operate or initiate operation of the various components of the backup cell 100.

The second manager component 164 could also be configured to change the operational parameters of the manager component 150. Thus, a system wide change to backup cell parameters can be initiated through a single manager component and propagated to other backup cells. Or, the second manager component 164 could fill in for the first manager component 114 should it fail. Additionally, the interaction between the backup cells and other manager components allows for the appearance of a “seamless” network of backup cells to administrators sitting in remote locations.

Additional supervisory levels, controls, or permissions could be added to the second manager component 164 to allow the supervisory control of additional backup cells for which the first manager component 114 is supervising. As such, a hierarchy of backup control can be realized through the interaction of levels or connections of manager components.

Additionally, the first and second manager components 114 and 164 can be configured such that critical events are propagated to another manager component having supervisory control or permission for it. Thus, an administrator logged into a managerial component sitting in the path of propagation can see critical events happening in the backup cells in the path of supervision. This criticality threshold for an event to be propagated to another management component of another backup cell may be configurable. Thus, an individual manager component can track the universe of backup cells that it is communicatively coupled to.

It should be noted that while only one backup cell is pictured in communication with the second manager component 164, that any number of backup cells may be envisioned. It should also be noted that the hierarchy of backup cells may be configured in many manners. Thus, a single manager component may associate itself with several other backup cells, in a “shallow” configuration. Or, each succeeding manager component may be associated with one or more other backup cells, providing a tree-like structure to the supervisory capacities of the manager components. Or, a ring-like structure may be envisioned, where each manager component is associated with another backup cell, and the last manager component is associated with the first backup cell.

Further details on structures of a backup cell may also be envisioned by reference to U.S. patent application Ser. No. 09/354,063, entitled “MODULAR BACKUP AND RETRIEVAL SYSTEM”, filed Jul. 15, 1999. This application is incorporated hereby by reference for all purposes. The details of the backup cell as recited in the reference are substantially similar to that outlined above, but are not detailed in this application.

FIG. 2 is functional block diagram of an embodiment of the hierarchical backup system of FIG. 1 embodying data transfer between the components comprising the individual backup cell and the transfer of data outside of the backup cell. The backup cell 200 comprises the network computing devices 210 (1), 220 (2), and 230 (3). The network computing device 210 (1) runs a first manager component such as first manager component 212, responsible for the backup parameters of the backup cell 200, as described before.

The network computing devices 210 (1) and 230 (3) are communicatively coupled to backup devices 218 and 238, respectively. The backup devices 218 and 238 store the data and or files directed to them in a backup, where the data and/or files can be retrieved at a later time.

The backup devices 218 and 238 are operated by media components 216 and 236, respectively. The media component 216 is a software agent responsible for the physical operation of the backup device 218 during a backup or restore. During a backup, the media component 216 maintains an index of the data units and/or files backed up and where they are physically located on the physical backup device 218. The backup device 238 and the media component 236 operate in a similar manner. It should be noted that the backup devices may be many types of devices, including such storage devices as tape drives, cartridge drives, magneto-optical drives, or any combination thereof.

The network computing devices 210 (1), 220 (2), and 230 (3) also contain client components 214, 224, and 234, respectively. The client components 214, 224, and 234 are software agents tasked with maintaining the operational parameters and controlling a backup or restore of an individual network computing device. Thus, the types of files and/or data backed up, the priority of the files and/or data to be backed up, and other operational parameters of a backup for a particular network computing device are controlled by a particular client component.

In a backup, the first manager component 212 would indicate to the appropriate client component to initiate a backup, and that the backup should be directed to a particular backup media. For example, assume that the first manager component 212 determines that a backup of the network device 220 (2) is warranted. The first manager component 212 also determines that the backup should be directed to the backup device 238. The first manager component 212 would contact the client component 224 with the request for a backup of the network device 220 (2), and that the data and/or files should be stored through the media component 236 on the backup device 238.

The client component 224 undertakes the backup of the network computing device 220 (2) in an appropriate manner. The backup may be a full backup, an incremental backup, or a differential backup, depending upon the strategy as defined by an administrator for the network computing device 220 (2). The client component 224 would then notify the media component 236 of the data and/or files to be backed up. The media component 236 would cause the data and/or files sent by the client component 224 to be physically backed up on the backup device 238.

The media component 236 makes an index entry for the backed up file and/or data units, thus keeping an easily maintained and coordinated way to manage information on the backup of the file and/or data units, including their whereabouts and other particulars. Portions of the indexed information on the file and/or data units are forwarded to the first manager component 212. The manager component may use this information in the managing of the backup devices and the determination of where to send other file and or data units from backups from other network computing devices.

The first manager component 212 is able to receive and send this indexed information to the second manager component such as second manager component 262 running on the network computing device 260 (4). Additional indexed information on the backup can exist distributed about the various media components, and the first or second manager components 212 or 262 can access this information by querying the proper media component for it. Thus, the information required to make the proper query can be passed among the manager components as well. The second manager component 262 can itself be a manager component for the backup cell where it resides.

While a peer-to-peer relationship can be present among the manager components, the manager components can be configured in a parent-child relationship as well. The first manager component 212 can be configured to receive directions from the second manager component 262 regarding the operation of the backup cell 200. Additionally, information on the client components 214, 224, and 234 could be provided, as well as information on the media components 216 and 236, and on the backup devices 218 and 238.

Should the second manager component 262 running on the network computing device 260 (4) be so configured, this information from the first manager component 212 could be propagated to the second manager component 262. Thus, complete operational control of the first manager component 212 could be asserted from the second manager component 262 with the proper authorization.

Further, since the second manager component 262 has information about the client components 214, 224, and 234, the information about the media components 216 and 236, as well as information about the media devices 218 and 238, the second manager component 262 could operate as a surrogate manager component to the backup cell 200. As such, the first manager component 212 could be bypassed in the event of a failure of the first manager component 212.

Additionally, the second manager component 262 may be given a supervisory control over the first manager component 212. This would enable the second manager component 262 to change operational parameters, administration, or configuration of the backup cell 200, or to allow a supervisor sitting at the network device 260 (4) to operate the functionality of the backup cell 200 in the event of an emergency.

FIG. 3 is a block diagram detailing the use of the manager component of FIG. 1 as a virtual manager component for a plurality of virtual backup cells. The backup cells 100 and 150 of FIG. 1 may be “virtual”, as well as physical, backup cells. The virtual manager components can identify administrative domains over which the particular virtual manager component exercises administrative control.

In this case, one physical manager component such as first manager component 310 could be logically divided into several virtual manager components 320 (3), 330 (1), and 340 (2). Each of the virtual manager components 320 (3), 330 (1), and 340 (2) would be responsible for the backup functionality of portions of the physical network devices located in the physical backup cell.

The first manager component 310 runs on a network computing device 312. Connected to and in communication with the network computing device 312 are network computing devices 370 (3), 372 (4), 350 (1), 352 (2), 360 (5), and 362 (6).

The network computing devices 370 (3) and 372 (4) are logically grouped together as a unit requiring one particular set of backup guidelines. Similarly, the network computing devices 350 (1) and 352 (2) are logically grouped together as another group of network computing devices requiring another particular set of backup guidelines. Also, the network computing devices 360 (5) and 362 (6) are logically grouped together as a unit requiring yet another particular set of backup guidelines.

The first manager component 310 can be configured to operate three independent backup management policies. The virtual manager component 340 (2) is responsible for the backup management of the group of network devices 370 (3) and 372 (4). The virtual manager component 320 (3) is responsible for the backup management of the group of network devices 350 (1) and 352 (2). The virtual manager component 330 (1) is responsible for the backup management of the group of network devices 360 (5) and 362 (6).

A remote network computing device 380 operates a second manager component such as manager component 385. The second manager component 385 is in communication with the first manager component 310. As such, the first manager component 310 can be configured to supervise the activities of the manager component 310, and the virtual manager components 320 (3), 330 (1), and 340 (2).

FIG. 4 is a logical block diagram of the resulting backup cells of the network system depicted in FIG. 3. The manager component 340 and the network computing devices 370 (3) and 372 (4) make up a first virtual backup cell 410. Similarly, the manager component 320 (3), along with the network computing devices 350 (1) and 352 (2), make up a second virtual backup cell 420. Also, the manager component 330 (1) and the network computing devices 360 (5) and 362 (6) make up a third virtual backup cell 430.

Each virtual manager component is responsible and maintains the functional parameters associated with the group of network computing devices associated with it. Each virtual manager component within the physical first manager component 310 (depicted in FIG. 3) is able to maintain and control the backup and restoration actions and parameters of the network devices associated with it in a manner independent from the other virtual manager components it is related to.

The virtual manager components may be configured where one of the manager components maintains supervisory control over the others, or any other combination. Or, the remote second manager component 385 may maintain supervisory control any of the virtual manager components 320 (3), 330 (1), and 340 (2) and their associated backup cells. Or, as indicated earlier, any or all of the virtual manager components 320 (3), 330 (1), and 340 (2) may be configured to supervise the second manager component 385 and its associated backup cell.

As such, the ability to link together similar network devices under different manager components enables a backup system that easily defines domains and sub-domains within an enterprise or organization. Thus, a manager component able to maintain supervisory control over others may be easily maintained and identified in a linked network of virtual and physical backup cells by name.

FIG. 5 is a block diagram of an exemplary hierarchical backup network according to the invention. Each bubble represents a physical backup cell, as described previously. The physical backup cells may contain other virtual backup cells. The backup cells can be configurable by a domain name, which uniquely identifies the location and/or supervisory overview of the backup cell in the hierarchy.

As such, the root backup cell of the network of backup cells can be defined as the domain name “Company”, or other identifier indicating the root. In the naming convention, any manager component associated with a particular name would exercise supervisory control over manager components having that name followed by a delimiter, and followed by a sub-domain name. In this case, the manager component within a backup cell that is the root of a sub-tree would be able to exercise supervisory or administrative control over the backup cells further from the root.

Thus, the manager component associated with the “Company” backup cell would exercise supervisory control over the entire tree, including the sub-domains indicated by “Company.hq”, “Company.mktg”, “Company.eng”, and “Company.sales”. Additionally, the manager components under each of the sub-domains would exercise supervisory control over the sub-sub-domains identified with the proper sub-domain prefix.

As such, the domain “Company.hq” may be representative of an administrative domain located at a company's headquarters and responsible for backup actions and parameters about the physical headquarters. The managerial component associated with the domain “Company” can exercise supervisory control over the backup cell associated with the domain “Company.hq”.

A backup cell 510 is a backup cell associated with the sales network computing devices. The backup cell 510 contains two different domains, “Company.sales” and “Company.sales.usa”. The domain “Company.sales” is the supervisory domain for the sub-domains existing underneath “Company.sales”. The domain “Company.sales.usa” is associated with a backup cell that manages the backups for network computing devices in the company's United States sales area. The manager component directing the backup cell “Company.sales.usa” is supervised by the manager component associated with the backup cell “Company.sales”

A backup cell 512 is associated with the network devices involved in the company's sales in Europe. The backup cell 512 is communicatively coupled to the backup cell 510, and is given the domain name “Company.sales.eur”. As such, the manager component associated with the backup cell 512 is under the supervisory control of the manager component associated with the domain “Company.sales”.

Correspondingly, the backup cell 514 is concerned with directing backups of network computing devices involved in the Asian sales division. The backup cell 514 is communicatively coupled to the backup cell 510, and has the domain name “Company.sales.asia”. Thus, the manager component for the backup cell 514 is under the supervisory control of the manager component associated with the domain name “Company.sales”.

One should note that in this example the manager components for the backup cell 512 do not have supervisory control over the backup cell 514, and vice versa. In any case, this is possible and can be implemented.

The backup cell 520 contains several hierarchical portions. First, the domain “Company.mktg” is contained in the backup cell 520. The manager component associated with the “Company.mktg” domain exercise supervisory functions for backup cells residing under the “Company.mktg” domain. These other sub-domains are administered and configured from the manager component associated with the “Company.mktg” domain.

Additionally, the backup cell 520 contains the virtual backup cells “Company.mktg.ty” and “Company.mktg.print”, each associated with the backup of network devices associated with the different departments in the “Company.mktg” domain. Each domain has its own virtual manager component exercising control over its own particular administrative domain, and being under the supervisory control of a manager component running on the same backup cell 520.

A backup cell 530 contains a domain named “Company.eng”, responsible for supervisory control of the backup schemes for the network devices in the company's engineering locations. The backup cell 530 also contains a domain “Company.eng.nj”. The manager component associated with the domain “Company.eng.nj” is responsible for the configuration, administration, and direction of backups of network computing devices for engineering work located in the company's New Jersey locations.

Nested underneath the backup cell 530 are backup cells 532, 534, and 536, having the domain names “Company.eng.ca”, “Company.eng.tx”, and “Company.eng jp”, respectively. Each of these backup cells is responsible for the backup of network computing devices at a particular location, and is under the supervisory control of the manager component associated with the domain “Company.eng”.

Additionally, other backup cells 540 and 542 are nested beneath the domain “Company.eng.ca”. The domains “Company.eng.ca.routers” and “Company.eng.ca.gateways” are associated with backup cells for network computing devices associated with specific lines of engineering.

Thus, from the manager component associated with the domain “Company”, an administrator can configure, administer, or direct backup activities for any of the nested backup cells below it in the “hq”, “sales”, “mktg”, or “eng” domains. Sufficient information on backups and events are replicated up from the lower lying backup cells in the tree to allow the manager component associated with the “Company” domain to perform these supervisory duties. Further, any intervening manager components in the path between a specific domain and the root may perform the supervisory activities.

Thus, from any backup cell on a sub-tree, a manager component associated with that backup cell can supervise, configure, or administer the backup functionality of any backup cell in nested below it. For example, and administrator at the “Company.eng” manager component would be able to configure all the backup cells in with the name “Company.eng.*”, where “*” stands for any sub-domain under the “Company.eng” domain.

Critical events or information regarding a physical backup in a backup cell, such as the information indexed by a media component as it backs up a file and/or data unit, are communicated towards the root. For example, assume that a particular network computing device operating in the backup cell “Company.eng.ca.gateways” fails. If the event is critical enough, news of the event would be replicated to “Company.eng.ca”, and from there to “Company.eng”, and ultimately to “Company”. Thus, actions at any of these backup cells may be asserted to aid the situation. Information regarding the backup process would also be replicated towards the root.

Usually, the events are replicated in an online fashion in real-time. Replication takes place, subject to criticality thresholds, all the way to the root as long as the parent backup cell is reachable. If the parent is unreachable, the underlying backup cell needing to send the information on may periodically spawn a process to check on the reachability of the parent backup cell. If the parent backup cell resumes a reachable state, the message, along with others stored in a queue, are passed upwards to the parent backup cell.

Or, the parent may request a “dump” of meta-data and critical events regarding the status of the system and its children at any time. This dump may be a one level dump, or may recursively act on all the sub-domains of the sub-domain. This meta-data could include the information regarding the backup event and indexed at the time of backup, information of all domains known to the child backup cell, backup devices and their associated media components in the backup cell, clients and their client components in the backup cell, applications running on the client network devices in the backup cell, related archive files grouped into archive groups on the network devices in the backup cell, sets of related media defining a media group in the backup cell, and all backup devices.

Thus, not only events may be passed upwards, but the state of each backup cell, both physical and virtual, may be passed upwards accordingly. This allows the parent manager component to act in place of the child should it be required to do so. Or, it allows true supervisory control of the child backup cell, as well as the supervisory control over any child backup cells of the child backup cell, and so on.

Additionally, due to the passage of this information, viewing, administering, configuring, and controlling the domains under a particular domain is possible from a root domain. Further, the manager components associated with the sub-domains may be administered from the root domain of the tree or any sub-tree within the main body of the tree structure. Thus, administration en masse is possible for an entire enterprise, division, location, or any other granularity as required. In view of the above detailed description of the present invention and associated drawings, other modifications and variations will now become apparent to those skilled in the art. It should also be apparent that such other modifications and variations may be effected without departing from the spirit and scope of the present invention as set forth in this specification.

Claims

1. A hierarchical storage management system for storing data in a network environment, the storage management system comprising:

a plurality of backup cells comprising a first plurality of physical backup cells and a second plurality of virtual backup cells;
a first manager component comprising one or more computer processors associated with at least one network computing device of a plurality of network computing devices, the first manager component configured to manage backup operations for at least one of the first plurality of physical backup cells;
a second manager component associated with at least one of the second plurality of virtual backup cells, wherein the second manager component is configured to execute on at least one of the plurality of network computing devices and further configured to manage backup operations for at least one of the second plurality of virtual backup cells;
a media component configured to execute on at least one network computing device of a plurality of network computing devices and being communicatively coupled to at least one storage device to store data to the at least one storage device;
a client component configured to execute on at least one of the plurality of network computing devices and to obtain the data from at least one of the plurality of network computing devices according to first parameters maintained by the client component, the client component being further configured to transmit the data to the media component;
wherein the second manager component is configured to direct the client component to obtain the data according to second parameters maintained by the second manager component and to perform backup operations on the plurality of virtual backup cells; and
wherein the second manager is further controlled by the first manager component and performs backup operations on the plurality of virtual backup cells in response to the first manager component.

2. The storage management system of claim 1 wherein the media component further comprises an index of the physical location of the data stored on the at least one storage device.

3. The storage management system of claim 2 wherein the media component is configured to send at least a portion of the index to the second manager component.

4. The storage management system of claim 3 wherein the second manager component is configured to send the portion of the index to the first manager component.

5. The storage management system of claim 1 wherein the first manager component is configured to maintain information regarding an operational status of at least one of the second manager component, the at least one storage device, and the media component.

6. The storage management system of claim 1 wherein the at least one other of the plurality of backup cells further comprises:

a second media component configured to execute on one of the plurality of network computing devices and being communicatively coupled to a second storage device to store second data to the second storage device;
a second client component configured to execute on a network computing device of the plurality of network computing devices and to obtain and transmit the second data to the second media component; and
wherein at least one other of the plurality of physical backup cells is configured to be controlled by a third manager component.

7. The system of claim 1, wherein the second parameters include at least one of a storage schedule, an aging policy and a pruning policy.

8. A method for performing a storage operation in a hierarchical storage management system, the method comprising:

processing backup operations with a first management component comprising one or more computer processors, wherein the first management component is associated with at least a first backup cell of a first plurality of physical backup cells;
processing backup operations with a second management component associated with at least a second virtual backup cell of a second plurality of virtual backup cells, wherein the second management component is hierarchically coupled to the first manager component;
instructing the second manager component with the first manager component to initiate the storage operation on the second virtual backup cell;
obtaining the data from the first client device with a client component configured to execute on the first client device;
storing the data to a storage device according to parameters maintained by the first manager component;
updating an index maintained by the media component, the index indicating a physical location of the data stored on the storage device.

9. The method of claim 8 additionally comprising initiating the request to perform the storage operation based at least on an aging policy.

10. The method of claim 8 additionally comprising alerting the first manager component with respect to operation of the second virtual backup cell.

11. The method of claim 8 additionally comprising receiving with the first manager component status information regarding the second manager component and a third manager component of a third backup cell.

12. The method of claim 11 wherein said instructing the second manager component to initiate the storage operation further comprises selecting the second manager component based on an availability of the second manager component and the third manager component.

13. The method of claim 8 further comprising maintaining an index of the physical location of the data stored on the at least one storage device.

14. The method of claim 13 further comprising sending at least a portion of the index to the second manager component.

15. The method of claim 14 further comprising sending the portion of the index to the first manager component.

16. The method of claim 8, further comprising maintaining information regarding an operational status of at least one of the second manager component, the at least one storage device, and the media component.

17. The method of claim 8, wherein the parameters include at least one of a storage schedule, an aging policy and a pruning policy.

Referenced Cited
U.S. Patent Documents
4296465 October 20, 1981 Lemak
4686620 August 11, 1987 Ng
4751639 June 14, 1988 Corcoran et al.
4995035 February 19, 1991 Cole et al.
5005122 April 2, 1991 Griffin et al.
5093912 March 3, 1992 Dong et al.
5133065 July 21, 1992 Cheffetz et al.
5193154 March 9, 1993 Kitajima et al.
5204958 April 20, 1993 Cheng et al.
5212772 May 18, 1993 Masters
5226157 July 6, 1993 Nakano et al.
5239647 August 24, 1993 Anglin et al.
5241668 August 31, 1993 Eastridge et al.
5241670 August 31, 1993 Eastridge et al.
5265159 November 23, 1993 Kung
5276860 January 4, 1994 Fortier et al.
5276867 January 4, 1994 Kenley et al.
5287500 February 15, 1994 Stoppani, Jr.
5301351 April 5, 1994 Jippo
5311509 May 10, 1994 Heddes et al.
5321816 June 14, 1994 Rogan et al.
5333251 July 26, 1994 Urabe et al.
5333315 July 26, 1994 Saether et al.
5347653 September 13, 1994 Flynn et al.
5410700 April 25, 1995 Fecteau et al.
5426284 June 20, 1995 Doyle
5448724 September 5, 1995 Hayashi et al.
5455926 October 3, 1995 Keele et al.
5491810 February 13, 1996 Allen
5495607 February 27, 1996 Pisello et al.
5504873 April 2, 1996 Martin et al.
5537533 July 16, 1996 Staheli et al.
5544345 August 6, 1996 Carpenter et al.
5544347 August 6, 1996 Yanai et al.
5555404 September 10, 1996 Torbjornsen et al.
5559957 September 24, 1996 Balk
5559991 September 24, 1996 Kanfi
5574898 November 12, 1996 Leblang et al.
5598546 January 28, 1997 Blomgren
5613134 March 18, 1997 Lucus et al.
5615392 March 25, 1997 Harrison et al.
5619644 April 8, 1997 Crockett et al.
5638509 June 10, 1997 Dunphy et al.
5642496 June 24, 1997 Kanfi
5644766 July 1, 1997 Coy et al.
5649185 July 15, 1997 Antognini et al.
5659614 August 19, 1997 Bailey
5673381 September 30, 1997 Huai et al.
5675511 October 7, 1997 Prasad et al.
5677900 October 14, 1997 Nishida et al.
5682513 October 28, 1997 Candelaria et al.
5687343 November 11, 1997 Fecteau et al.
5699361 December 16, 1997 Ding et al.
5719786 February 17, 1998 Nelson et al.
5729743 March 17, 1998 Squibb
5734817 March 31, 1998 Roffe et al.
5737747 April 7, 1998 Vishlitzky et al.
5740405 April 14, 1998 DeGraaf
5751997 May 12, 1998 Kullick et al.
5758359 May 26, 1998 Saxon
5758649 June 2, 1998 Iwashita et al.
5761677 June 2, 1998 Senator et al.
5761734 June 2, 1998 Pfeffer et al.
5764972 June 9, 1998 Crouse et al.
5778395 July 7, 1998 Whiting et al.
5790828 August 4, 1998 Jost
5805920 September 8, 1998 Sprenkle et al.
5806058 September 8, 1998 Mori et al.
5812398 September 22, 1998 Nielsen
5812748 September 22, 1998 Ohran et al.
5813009 September 22, 1998 Johnson et al.
5813013 September 22, 1998 Shakib et al.
5813017 September 22, 1998 Morris
5829046 October 27, 1998 Tzelnic et al.
5835953 November 10, 1998 Ohran
5845257 December 1, 1998 Fu et al.
5860073 January 12, 1999 Ferrel et al.
5860104 January 12, 1999 Witt et al.
5864871 January 26, 1999 Kitain et al.
5875478 February 23, 1999 Blumenau
5875481 February 23, 1999 Ashton et al.
5884067 March 16, 1999 Storm et al.
5887134 March 23, 1999 Ebrahim
5896531 April 20, 1999 Curtis et al.
5897642 April 27, 1999 Capossela et al.
5898431 April 27, 1999 Webster et al.
5901327 May 4, 1999 Ofek
5924102 July 13, 1999 Perks
5926836 July 20, 1999 Blumenau
5933104 August 3, 1999 Kimura
5933601 August 3, 1999 Fanshier et al.
5950205 September 7, 1999 Aviani, Jr.
5956519 September 21, 1999 Wise et al.
5956733 September 21, 1999 Nakano et al.
5958005 September 28, 1999 Thorne et al.
5970233 October 19, 1999 Lie et al.
5970255 October 19, 1999 Tran et al.
5974563 October 26, 1999 Beeler, Jr.
5978841 November 2, 1999 Berger
5987478 November 16, 1999 See et al.
5991753 November 23, 1999 Wilde
5995091 November 30, 1999 Near et al.
6000020 December 7, 1999 Chin et al.
6003089 December 14, 1999 Shaffer et al.
6009274 December 28, 1999 Fletcher et al.
6012090 January 4, 2000 Chung et al.
6016553 January 18, 2000 Schneider et al.
6018744 January 25, 2000 Mamiya et al.
6021415 February 1, 2000 Cannon et al.
6023710 February 8, 2000 Steiner et al.
6026414 February 15, 2000 Anglin
6026437 February 15, 2000 Muschett et al.
6052735 April 18, 2000 Ulrich et al.
6070228 May 30, 2000 Belknap et al.
6073220 June 6, 2000 Gunderson
6076148 June 13, 2000 Kedem et al.
6078934 June 20, 2000 Lahey et al.
6085030 July 4, 2000 Whitehead et al.
6088694 July 11, 2000 Burns et al.
6091518 July 18, 2000 Anabuki
6094416 July 25, 2000 Ying
6101585 August 8, 2000 Brown et al.
6105037 August 15, 2000 Kishi
6105129 August 15, 2000 Pallmann
6108640 August 22, 2000 Slotznick
6108712 August 22, 2000 Hayes, Jr.
6112239 August 29, 2000 Kenner et al.
6122668 September 19, 2000 Teng et al.
6131095 October 10, 2000 Low et al.
6131190 October 10, 2000 Sidwell
6137864 October 24, 2000 Yaker
6148377 November 14, 2000 Carter et al.
6148412 November 14, 2000 Cannon et al.
6154787 November 28, 2000 Urevig et al.
6154852 November 28, 2000 Amundson et al.
6161111 December 12, 2000 Mutalik et al.
6161192 December 12, 2000 Lubbers et al.
6167402 December 26, 2000 Yeager
6175829 January 16, 2001 Li et al.
6189051 February 13, 2001 Oh et al.
6212512 April 3, 2001 Barney et al.
6212521 April 3, 2001 Minami et al.
6230164 May 8, 2001 Rikieta et al.
6249795 June 19, 2001 Douglis
6253217 June 26, 2001 Dourish et al.
6260069 July 10, 2001 Anglin
6269382 July 31, 2001 Cabrera et al.
6269431 July 31, 2001 Dunham
6275953 August 14, 2001 Vahalia et al.
6292783 September 18, 2001 Rohler
6295541 September 25, 2001 Bodnar et al.
6301592 October 9, 2001 Aoyama et al.
6304880 October 16, 2001 Kishi
6314439 November 6, 2001 Bates et al.
6314460 November 6, 2001 Knight et al.
6324581 November 27, 2001 Xu et al.
6328766 December 11, 2001 Long
6330570 December 11, 2001 Crighton
6330572 December 11, 2001 Sitka
6330589 December 11, 2001 Kennedy
6330642 December 11, 2001 Carteau
6343287 January 29, 2002 Kumar et al.
6343324 January 29, 2002 Hubis et al.
6350199 February 26, 2002 Williams et al.
6351764 February 26, 2002 Voticky et al.
RE37601 March 19, 2002 Eastridge et al.
6353878 March 5, 2002 Dunham
6356801 March 12, 2002 Goodman et al.
6356863 March 12, 2002 Sayle
6360306 March 19, 2002 Bergsten
6367029 April 2, 2002 Mayhead et al.
6374336 April 16, 2002 Peters et al.
6389432 May 14, 2002 Pothapragada et al.
6397308 May 28, 2002 Ofek et al.
6418478 July 9, 2002 Ignatius et al.
6421709 July 16, 2002 McCormick et al.
6421711 July 16, 2002 Blumenau et al.
6438595 August 20, 2002 Blumenau et al.
6453325 September 17, 2002 Cabrera et al.
6466592 October 15, 2002 Chapman
6470332 October 22, 2002 Weschler
6473794 October 29, 2002 Guheen et al.
6487561 November 26, 2002 Ofek et al.
6487644 November 26, 2002 Huebsch et al.
6493811 December 10, 2002 Blades et al.
6519679 February 11, 2003 Devireddy et al.
6535910 March 18, 2003 Suzuki et al.
6538669 March 25, 2003 Lagueux, Jr. et al.
6542909 April 1, 2003 Tamer et al.
6542972 April 1, 2003 Ignatius et al.
6546545 April 8, 2003 Honarvar et al.
6549918 April 15, 2003 Probert et al.
6553410 April 22, 2003 Kikinis
6557039 April 29, 2003 Leong et al.
6564219 May 13, 2003 Lee et al.
6564228 May 13, 2003 O'Connor
6581143 June 17, 2003 Gagne et al.
6593656 July 15, 2003 Ahn et al.
6604149 August 5, 2003 Deo et al.
6615241 September 2, 2003 Miller et al.
6631493 October 7, 2003 Ottesen et al.
6647396 November 11, 2003 Parnell et al.
6647409 November 11, 2003 Sherman et al.
6654825 November 25, 2003 Clapp et al.
6658436 December 2, 2003 Oshinsky et al.
6658526 December 2, 2003 Nguyen et al.
6704933 March 9, 2004 Tanaka et al.
6721767 April 13, 2004 De Meno et al.
6728733 April 27, 2004 Tokui
6732124 May 4, 2004 Koseki et al.
6742092 May 25, 2004 Huebsch et al.
6757794 June 29, 2004 Cabrera et al.
6760723 July 6, 2004 Oshinsky et al.
6763351 July 13, 2004 Subramaniam et al.
6789161 September 7, 2004 Blendermann et al.
6871163 March 22, 2005 Hiller et al.
6874023 March 29, 2005 Pennell et al.
6886020 April 26, 2005 Zahavi et al.
6941304 September 6, 2005 Gainey et al.
6952758 October 4, 2005 Chron et al.
6968351 November 22, 2005 Butterworth
6973553 December 6, 2005 Archibald, Jr. et al.
6978265 December 20, 2005 Schumacher
6983351 January 3, 2006 Gibble et al.
7003519 February 21, 2006 Biettron et al.
7003641 February 21, 2006 Prahlad et al.
7035880 April 25, 2006 Crescenti et al.
7039860 May 2, 2006 Gautestad
7062761 June 13, 2006 Slavin et al.
7076685 July 11, 2006 Pillai et al.
7082441 July 25, 2006 Zahavi et al.
7085904 August 1, 2006 Mizuno et al.
7096315 August 22, 2006 Takeda et al.
7103731 September 5, 2006 Gibble et al.
7103740 September 5, 2006 Colgrove et al.
7107298 September 12, 2006 Prahlad et al.
7107395 September 12, 2006 Ofek et al.
7120757 October 10, 2006 Tsuge
7130970 October 31, 2006 Devassy et al.
7155465 December 26, 2006 Lee et al.
7155481 December 26, 2006 Prahlad et al.
7155633 December 26, 2006 Tuma et al.
7174312 February 6, 2007 Harper et al.
7194454 March 20, 2007 Hansen et al.
7246140 July 17, 2007 Therrien et al.
7246207 July 17, 2007 Kottomtharayil et al.
7269612 September 11, 2007 Devarakonda et al.
7278142 October 2, 2007 Bandhole et al.
7287047 October 23, 2007 Kavuri
7293133 November 6, 2007 Colgrove et al.
7315923 January 1, 2008 Retnamma et al.
7315924 January 1, 2008 Prahlad et al.
7328225 February 5, 2008 Beloussov et al.
7343356 March 11, 2008 Prahlad et al.
7343365 March 11, 2008 Farnham et al.
7343453 March 11, 2008 Prahlad et al.
7343459 March 11, 2008 Prahlad et al.
7346623 March 18, 2008 Prahlad et al.
7346751 March 18, 2008 Prahlad et al.
7356657 April 8, 2008 Mikami
7359917 April 15, 2008 Winter et al.
7380072 May 27, 2008 Kottomtharayil et al.
7389311 June 17, 2008 Crescenti et al.
7395282 July 1, 2008 Crescenti et al.
7409509 August 5, 2008 Devassy et al.
7430587 September 30, 2008 Malone et al.
7433301 October 7, 2008 Akahane et al.
7434219 October 7, 2008 De Meno et al.
7447692 November 4, 2008 Oshinsky et al.
7454569 November 18, 2008 Kavuri et al.
7467167 December 16, 2008 Patterson
7472238 December 30, 2008 Gokhale
7484054 January 27, 2009 Kottomtharayil et al.
7490207 February 10, 2009 Amarendran
7496589 February 24, 2009 Jain et al.
7500053 March 3, 2009 Kavuri et al.
7500150 March 3, 2009 Sharma et al.
7509316 March 24, 2009 Greenblatt et al.
7512601 March 31, 2009 Cucerzan et al.
7519726 April 14, 2009 Palliyll et al.
7529748 May 5, 2009 Wen et al.
7532340 May 12, 2009 Koppich et al.
7536291 May 19, 2009 Retnamma et al.
7543125 June 2, 2009 Gokhale
7546324 June 9, 2009 Prahlad et al.
7581077 August 25, 2009 Ignatius et al.
7596586 September 29, 2009 Gokhale et al.
7613748 November 3, 2009 Brockway et al.
7617253 November 10, 2009 Prahlad et al.
7617262 November 10, 2009 Prahlad et al.
7617541 November 10, 2009 Plotkin et al.
7627598 December 1, 2009 Burke
7627617 December 1, 2009 Kavuri et al.
7636743 December 22, 2009 Erofeev
7651593 January 26, 2010 Prahlad et al.
7661028 February 9, 2010 Erofeev
7668798 February 23, 2010 Scanlon et al.
7685126 March 23, 2010 Patel et al.
7716171 May 11, 2010 Kryger
7734715 June 8, 2010 Hyakutake et al.
7757043 July 13, 2010 Kavuri et al.
7840537 November 23, 2010 Gokhale et al.
7844676 November 30, 2010 Prahlad et al.
7877351 January 25, 2011 Crescenti et al.
20020040376 April 4, 2002 Yamanaka et al.
20020042869 April 11, 2002 Tate et al.
20020049626 April 25, 2002 Mathias et al.
20020049778 April 25, 2002 Bell et al.
20020069324 June 6, 2002 Gerasimov et al.
20020103848 August 1, 2002 Giacomini et al.
20020107877 August 8, 2002 Whiting et al.
20020161753 October 31, 2002 Inaba et al.
20030061491 March 27, 2003 Jaskiewicz et al.
20030097361 May 22, 2003 Huang et al.
20030172158 September 11, 2003 Pillai et al.
20040107199 June 3, 2004 Dairymple et al.
20040193953 September 30, 2004 Callahan et al.
20040205206 October 14, 2004 Naik et al.
20040230829 November 18, 2004 Dogan et al.
20050114406 May 26, 2005 Borthakur et al.
20060005048 January 5, 2006 Osaki et al.
20060010154 January 12, 2006 Prahlad et al.
20060010227 January 12, 2006 Atluri
20070043956 February 22, 2007 El Far et al.
20070078913 April 5, 2007 Crescenti et al.
20070100867 May 3, 2007 Celik et al.
20070143756 June 21, 2007 Gokhale
20070183224 August 9, 2007 Erofeev
20070288536 December 13, 2007 Sen et al.
20080059515 March 6, 2008 Fulton
20080229037 September 18, 2008 Bunte et al.
20080243914 October 2, 2008 Prahlad et al.
20080243957 October 2, 2008 Prahlad et al.
20080243958 October 2, 2008 Prahlad et al.
20080244177 October 2, 2008 Crescenti et al.
20090055407 February 26, 2009 Oshinsky et al.
20090228894 September 10, 2009 Gokhale
20090248762 October 1, 2009 Prahlad et al.
20090271791 October 29, 2009 Gokhale
20090319534 December 24, 2009 Gokhale
20090319585 December 24, 2009 Gokhale
20100005259 January 7, 2010 Prahlad
20100049753 February 25, 2010 Prahlad et al.
20100094808 April 15, 2010 Erofeev
20100100529 April 22, 2010 Erofeev
20100122053 May 13, 2010 Prahlad et al.
20100131461 May 27, 2010 Prahlad et al.
20100138393 June 3, 2010 Crescenti et al.
20100145909 June 10, 2010 Ngo
20100179941 July 15, 2010 Agrawal et al.
20100205150 August 12, 2010 Prahlad et al.
20110066817 March 17, 2011 Kavuri et al.
20110072097 March 24, 2011 Prahlad et al.
Foreign Patent Documents
0 259 912 March 1988 EP
0341230 November 1989 EP
0381651 August 1990 EP
0405926 January 1991 EP
0467546 January 1992 EP
0 599 466 June 1994 EP
0670543 September 1995 EP
0717346 June 1996 EP
0774715 May 1997 EP
0809184 November 1997 EP
0 862 304 September 1998 EP
0899662 March 1999 EP
0981090 February 2000 EP
0 986 011 March 2000 EP
1 174 795 January 2002 EP
H11-102314 April 1999 JP
H11-259459 September 1999 JP
2001-60175 March 2001 JP
WO 94/17474 August 1994 WO
WO 95/13580 May 1995 WO
WO 98/39707 September 1998 WO
WO 99/12098 March 1999 WO
WO 99/14692 March 1999 WO
WO 99/23585 May 1999 WO
WO 01/04756 January 2001 WO
WO 2005/050381 June 2005 WO
Other references
  • Takashi Nakagomi, Mark Holzbach, Rodney Van Meter III, and Sanjay Ranade; “Re-Defining the Storage Hierarchy: An Ultra-Fast Magneto-Optical Disk Drive”; IEEE; 1993; pp. 267-274.
  • Daniel A. Menasce' , Odysseas I. Pentakalos, and Yelena Yesha; “An Analytic Model of Hierarchical Mass Storage Systems with Network-Attached Storage Devices”; ACM; 1996; pp. 180-189.
  • IBM Technical Disclosure Bulletin; “Cost Oriented Algorithm for Data Set Allocation in Storage Hierarchies Based on Fundamental Data Set Characteristics”, vol. 17, Issue No. 5; Oct. 1, 1974; pp. 1-2.
  • Armstead et al., “Implementation of a Campus-Wide Distributed Mass Storage Service: The Dream vs. Reality,” IEEE, 1995, pp. 190-199.
  • Arneson, “Development of Omniserver; Mass Storage Systems,” Control Data Corporation, 1990, pp. 88-93.
  • Arneson, “Mass Storage Archiving in Network Environments” IEEE, 1998, pp. 45-50.
  • Ashton, et al., “Two Decades of policy-based storage management for the IBM mainframe computer”, www.research.ibm.com, 19 pages, published Apr. 10, 2003, printed Jan. 3, 2009—U.S. Appl. No. 12/276,868., www.research.ibm.com, Apr. 10, 2003, pp. 19.
  • Cabrera, et al. “ADSM: A Multi-Platform, Scalable, Back-up and Archive Mass Storage System,” Digest of Papers, Compcon '95, Proceedings of the 40th IEEE Computer Society International Conference, Mar. 5-9, 1995, pp. 420-427, San Francisco, CA.
  • Catapult, Inc., Microsoft Outlook 2000 Step by Step, Published May 7, 1999, “Collaborating with Others Using Outlook & Exchange”, p. 8 including “Message Timeline.”
  • Eitel, “Backup and Storage Management in Distributed Heterogeneous Environments,” IEEE, 1994, pp. 124-126.
  • European Communication in Application No. 01906806.3, issued Sep. 21, 2010, in 6 pages.
  • http://en.wikipedia.org/wiki/NaiveBayesclassifier.
  • International Preliminary Report on Patentability dated May 15, 2006 in PCT/US2004/038278 filed Nov. 15, 2004, (Publication No. WO2005/050381).
  • International Search Report dated Feb. 1, 2006 in PCT/US2004/038278 filed Nov. 15, 2004, (Publication No. WO2005/050381).
  • International Search Report on Patentability dated Dec. 21, 2000 in PCT/US00/19364 filed Nov. 14, 2000 (Publication No. WO01/04756).
  • International Search Report, PCT Application PCT/US02/17973, Aug. 22, 2002; 1 page.
  • Jander, “Launching Storage-Area Net,” Data Communications, US, McGraw Hill, NY, vol. 27, No. 4(Mar. 21, 1998), pp. 64-72.
  • Jason Gait, “The Optical File Cabinet: A Random-Access File System for Write-Once Optical Disks,” IEEE Computer, vol. 21, No. 6, pp. 11-22 (1988) (see in particular figure 5 in p. 15 and recitation in claim 5).
  • Microsoft, about using Microsoft Excel 2000 files with earlier version Excel, 1985-1999, Microsoft, p. 1.
  • Rosenblum et al., “The Design and Implementation of a Log-Structure File System,” Operating Systems Review SIGOPS, vol. 25, No. 5, New York, US, pp. 1-15 (May 1991).
  • Supplementary European Search Report, European Patent Application No. 02747883, Sep. 15, 2006; 2 pages.
  • Szor, The Art of Virus Research and Defense, Symantec Press (2005) ISBN 0-321-30454-3.
  • Toyoda, Fundamentals of Oracle 8i Backup and Recovery, DB Magazine, Japan, Shoeisha, Co., Ltd.; Jul. 2000; vol. 10, No. 4, 34 total pages.
  • Weatherspoon H. et al., “Silverback: A Global-Scale Archival System,” Mar. 2001, pp. 1-15.
  • Witten et al., Data Mining: Practical Machine Learning Tools and Techniques, Ian H. Witten & Eibe Frank, Elsevier (2005) ISBN 0-12-088407-0.
  • Communication in European Applicatoin No. 02 747 883.3, mailed Jul. 20, 2007).
  • Office action in Japanese Application No. 2003-502696 mailed Jul. 15, 2008.
  • Ashton, et al., “Two Decades of policy-based storage management for the IBM mainframe computer”, www.research.ibm.com, 19 pages, published Apr. 10, 2003, printed Jan. 3, 2009., www.research.ibm.com, Apr. 10, 2003, pp. 19.
  • European Office Action, Application No. EP 019068337 , dated Mar. 26, 2008.
  • European Office Action, Application No. EP02778952.8, dated Apr. 22, 2008.
  • International Search Report and International Preliminary Report on Patentability, PCT/US2000/019363, dated May 4, 2001.
  • International Search Report and International Preliminary Report on Patentability, PCT/US2001/003183, dated Feb. 21, 2002.
  • International Search Report and International Preliminary Report on Patentability, PCT/US2001/003209, dated Sep. 29, 2001.
  • International Search Report and International Preliminary Report on Patentability, PCT/US2002/018169, dated Mar. 3, 2003.
  • International Search Report, PCT/US2000/019324, dated Dec. 21, 2000.
  • International Search Report, PCT/US2000/019329, dated Dec. 21, 2000.
  • International Search Report, PCT/US2001/003088, dated Dec. 23, 2003.
  • International Search Report, PCT/US2004/038278, dated Feb. 1, 2008.
  • Japanese Office Action, Application No. 2003/502696, dated Jul. 15, 2008.
  • Supplementary European Search Report, EP02778952.8, dated Sep. 21, 2006.
  • Translation of Japanese Office Action, Application No. 2003-504235, dated Mar. 25, 2008.
Patent History
Patent number: 8041673
Type: Grant
Filed: Jan 21, 2011
Date of Patent: Oct 18, 2011
Patent Publication Number: 20110119235
Assignee: CommVault Systems, Inc. (Oceanport, NJ)
Inventors: John Crescenti (Freehold, NJ), Srinivas Kavuri (Highland Park, NJ), David Alan Oshinsky (East Brunswick, NJ), Anand Prahlad (East Brunswick, NJ)
Primary Examiner: Ella Colbert
Attorney: Knobbe, Martens, Olson & Bear, LLP
Application Number: 13/011,219
Classifications
Current U.S. Class: File Or Database Maintenance (707/609); Synchronization (i.e., Replication) (707/610); Replication Version Control (i.e., Version Management) (707/638); Hierarchical Backup (707/651); Backup (711/162); Network Resource Allocating (709/226); Network Resources Access Controlling (709/229)
International Classification: G06F 7/00 (20060101); G06F 17/00 (20060101); G06F 13/00 (20060101); G06F 13/28 (20060101); G06F 15/173 (20060101); G06F 15/16 (20060101);