Hierarchical systems and methods for performing storage operations in a computer network

Information

  • Patent Grant
  • 9003117
  • Patent Number
    9,003,117
  • Date Filed
    Wednesday, March 6, 2013
    11 years ago
  • Date Issued
    Tuesday, April 7, 2015
    9 years ago
Abstract
A system for performing storage operations using hierarchically configured storage operation cells. The system includes a first storage manager component and a first storage operation cell. The first storage operation cell has a second storage manager component directed to performing storage operations in the first storage operation cell. Moreover, the first storage manager component is programmed to instruct the second storage manager regarding performance of storage operations in the first storage operation cell.
Description
COPYRIGHT NOTICE

A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosures, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever.


BACKGROUND OF THE INVENTION

1. Field of the Invention


The invention disclosed herein relates generally to performing storage operations on electronic data in a computer network. More particularly, the present invention relates to integrating storage-related operations for a computer network according to a specified hierarchy of storage operation cells.


2. Description of the Related Art


Current storage management systems employ a number of different methods perform storage operations on electronic data. For example, data can be stored as a primary copy, as a snapshot copy, as a backup copy, a hierarchical storage management copy (“HSM”), as an archive copy, and as other types of copies.


A primary copy of data generally comprises the production copy or other “live” version of the data used by a software application and in the native format of that application. A snapshot copy generally comprises a copy of the primary copy data at a certain point in time and is usually stored on a magnetic media storage device or other readily accessible storage device.


A backup copy is a point-in-time copy of the primary copy data stored in a backup format as opposed to in native application format. For example, a backup copy may be stored in a backup format that is optimized for compression and efficient long-term storage.


An HSM copy is a copy of the primary copy data, but generally comprises only a subset of the primary copy data that meets a certain criteria and is usually stored in a format other than the native application format. For example, an HSM copy might comprise only that data from the primary copy is larger than a given size threshold or older than a given age threshold and that is stored in a backup format. Often, HSM data is removed from the primary copy, but a stub is stored in the primary copy to indicate where to locate the data. When a user requests access to the HSM data that has been removed or migrated, systems use the stub to locate the data and make recovery of the data appear transparent even though the HSM data may be stored at a location different from the remaining primary copy data.


An archive copy is generally similar to an HSM copy, however, the data satisfying the criteria for removal from the primary copy is generally completely removed and no stub is left in the primary copy to indicate the location where the data has been moved. Archive copies of data are generally stored in a backup format or other non-native application format.


Examples of various types of data and copies of data are further described in the above-referenced related applications which are hereby incorporated by reference in their entirety. One example of a system that performs storage operations on electronic data that produce such copies of data is the Galaxy storage management system by CommVault Systems of Oceanport, N.J.


The Galaxy system leverages a modular storage management architecture that includes, among other things, storage manager components, client or data agent components, and media agent components as further described in U.S. Provisional Patent Application No. 60/460,234 which is hereby incorporated herein by reference in its entirety. The Galaxy system also can be hierarchically configured into backup cells to store and retrieve backup copies of electronic data as further described in U.S. patent application Ser. No. 09/354,058, now U.S. Pat. No. 7,395,282, issued Jul. 1, 2008, which is hereby incorporated by reference in its entirety.


While the Galaxy system offers a number of advantages over other systems, backup cells are still only hierarchically configured to perform backups of data and not directed to performing other types of storage operations. There is thus a need for systems and methods to hierarchically configure backup cells to perform other types of storage operations including snapshot copies, HSM copies, archive copies, and other types of copies of electronic data.


SUMMARY OF THE INVENTION

The present invention addresses, among other things, the problems discussed above performing storage operations on electronic data in a computer network.


In accordance with some aspects of the present invention, a computerized system is provided for performing storage operations using hierarchically configured storage operation cells, the system comprising: a first storage manager component; and a first storage operation cell, the first storage operation cell having a second storage manager component directed to performing storage operations in the first storage operation cell; wherein the first storage manager component is programmed to instruct the second storage manager regarding performance of storage operations in the first storage operation cell.


In some embodiments, the first storage manager component comprises a master storage manager component. The first storage manager component may comprise a component of a storage operation cell other than the first storage operation cell or alternatively may not comprise a component of a storage operation cell.


In some embodiments, the first storage manager component controls the second storage manager component during performance of storage operations in the first storage operation cell. The first storage operation cell may include a media agent component and a data agent component and in some embodiments, the first storage manager component is programmed to directly control at least one of the media agent and the data agent component during performance of storage operations in the first storage operation cell. The first storage manager component may also bypass the second storage manager component to directly control at least one of the media agent or the data agent component during performance of storage operations in the first storage operation cell.


In some embodiments of the invention, the first storage manager component instructs the second storage manager component regarding a time to perform a storage operation or a type of storage operation to perform, such as a snapshot copy operation, an HSM copy operation, or an archive copy operation.


In some embodiments, the first storage operation cell is organized according to a functional criteria, such as a type of storage operation performed by the first storage operation cell. In other embodiments, the first storage operation cell is organized according to a geographic criteria, such as a physical location of one or more components of the first storage operation cell.


In some embodiments, the second storage manager component is programmed to communicate status information regarding the first storage operation cell to the first storage manager component. Exemplary status information includes information regarding the availability of a component of the first storage operation cell, information regarding resource usage status by the first storage operation cell, such as usage of a storage device associated with the first storage operation cell, usage of a network pathway by components associated with the first storage operation cell, information regarding the status of one or more storage operations previously performed by the first storage operation cell, such as the status of one or more storage operations scheduled to be performed by the first storage operation cell, and other types of status information.


In some embodiments, the system comprises a second storage operation cell, the second storage operation cell having a third storage manager component directed to performing storage operations in the second storage operation cell, wherein the first storage manager component is programmed to instruct the third storage manager regarding performance of storage operations in the second storage operation cell. In some embodiments, the second storage manager component is also programmed to instruct the third storage manager regarding performance of storage operations in the second storage operation cell. In some embodiments, the second storage manager component is programmed to communicate status information regarding the first storage operation cell to the first storage manager component and the third storage manager component is programmed to communicate status information regarding the second storage operation cell to the first storage manager component. The first storage manager component is programmed to present a report of summary information regarding the status information communicated by the first storage operation cell and the status information communicated by the second storage operation cell.


In some embodiments, the second storage manager component is programmed to instruct the third storage manager regarding performance of storage operations in the second storage operation cell if a user of the second storage manager satisfies an access criteria for access to the second storage operation cell.





BRIEF DESCRIPTION OF THE DRAWINGS

The invention is illustrated in the figures of the accompanying drawings which are meant to be exemplary and not limiting, in which like references are intended to refer to like or corresponding parts, and in which:



FIG. 1 is a block diagram of a storage operation cell in a system to perform storage operations on electronic data in a computer network according to an embodiment of the invention; and



FIG. 2 is a block diagram of a hierarchically organized group of storage operation cells in a system to perform storage operations on electronic data in a computer network according to an embodiment of the invention.





DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

With reference to FIGS. 1 through 2, embodiments of the invention are presented. FIG. 1 presents a block diagram of a storage operation cell in a system to perform storage operations on electronic data in a computer network according to an embodiment of the invention. As shown, the storage operation cell includes a storage manager 100 and one or more of the following: a client 85, an information store 90, a data agent 95, a media agent 105, an index cache 110, a storage device 115, a jobs agent 120, an interface module 125, and a management agent 130. The system and elements thereof are exemplary of a modular backup system such as the CommVault Galaxy backup system, available from CommVault Systems, Inc., of Oceanport, N.J., and further described in U.S. patent application Ser. No. 09/610,738, now U.S. Pat. No. 7,035,880, issued Apr. 25, 2006, which is incorporated herein by reference in its entirety.


A storage operation cell generally includes combinations of hardware and software components directed to performing storage operations on electronic data. Exemplary storage operation cells according to embodiments of the invention include CommCells as embodied in the QNet storage management system and the QiNetix storage management system by CommVault Systems of Oceanport, N.J. Storage operation cells generally include a storage manager 100, a data agent 95, a media agent 105, a storage device 115, and, according to some embodiments, other components as further described herein. According to some embodiments of the invention, storage operations cells are related to backup cells and provide all of the functionality of backup cells as further described in U.S. patent application Ser. No. 09/354,058, now U.S. Pat. No. 7,395,282, issued Jul. 1, 2008, however, storage operation cells also perform additional types of storage operations and provide other types of storage management functionality which are not generally offered by backup cells. According to embodiments of the invention, additional storage operations performed by storage operation cells include creation, storage, retrieval, and migration of primary copies, snapshot copies, backup copies, HSM copies, archive copies, and other types of copies of electronic data. In some embodiments, storage operation cells also provide an integrated management console for users or system processes to interface with to perform storage operations on electronic data as further described herein.


A data agent 95 is generally a software module that is generally responsible for archiving, migrating, and recovering data of a client computer 85 stored in an information store 90 or other memory location. Each client computer 85 has at least one data agent 95 and the system can support many client computers 85. The system provides a plurality of data agents 95 each of which is intended to backup, migrate, and recover data associated with a different application. For example, different individual data agents 95 may be designed to handle Microsoft Exchange data, Lotus Notes data, Microsoft Windows 2000 file system data, Microsoft Active Directory Objects data, and other types of data known in the art.


If a client computer 85 has two or more types of data, one data agent 95 is generally required for each data type to archive, migrate, and restore the client computer 85 data. For example, to backup, migrate, and restore all of the data on a Microsoft Exchange 2000 server, the client computer 85 would use one Microsoft Exchange 2000 Mailbox data agent 95 to backup the Exchange 2000 mailboxes, one Microsoft Exchange 2000 Database data agent 95 to backup the Exchange 2000 databases, one Microsoft Exchange 2000 Public Folder data agent 95 to backup the Exchange 2000 Public Folders, and one Microsoft Windows 2000 File System data agent 95 to backup the client computer's 85 file system. These data agents 95 would be treated as four separate data agents 95 by the system even though they reside on the same client computer 85.


The storage manager 100 is generally a software module or application that coordinates and controls storage operations performed by the storage operation cell. The storage manager 100 communicates with all elements of the storage operation cell including client computers 85, data agents 95, media agents 105, and storage devices 115, to initiate and manage system backups, migrations, and recoveries. The storage manager 100 also communicates with other storage operation cells as further described herein.


The storage manager 100 includes a jobs agent 120 software module which monitors the status of all storage operations that have been performed, that are being performed, or that are scheduled to be performed by the storage operation cell. The jobs agent 120 is communicatively coupled with an interface agent 125 software module. The interface agent 125 provides presentation logic, such as a graphical user interface (“GUI”), an application program interface (“API”), or other interface by which users and system processes can retrieve information about the status of storage operations and issue instructions to the storage operations cell regarding performance of those storage operations as further described herein. For example, a user might modify the schedule of a number of pending snapshot copies or other types of copies. As another example, a user might use the GUI to view the status of all storage operation currently pending in all storage operation cells or the status of particular components in a storage operation cell.


The storage manager 100 also includes a management agent 130 software module. The management agent 130 generally provides an interface with other management components 100 in other storage operations cells through which information and instructions regarding storage operations may be conveyed. For example, in some embodiments as further described herein, a management agent 130 in first storage operation cell can communicate with a management agent 130 in a second storage operation cell regarding the status of storage operations in the second storage operation cell. In some embodiments, a management agent 130 in first storage operation cell can communicate with a management agent 130 in a second storage operation cell to control the storage manager 100 (and other components) of the second storage operation cell via the management agent 130 contained in the storage manager 100 for the second storage operation cell. In other embodiments, the management agent 130 in the first storage operation cell communicates directly with and controls the components in the second storage management cell and bypasses the storage manager 100 in the second storage management cell. Storage operation cells can thus be organized hierarchically as further described herein.


A media agent 105 is generally a software module that conducts data, as directed by the storage manager 100, between the client computer 85 and one or more storage devices 115 such as a tape library, a magnetic media storage device, an optical media storage device, or other storage device. The media agent 105 is communicatively coupled with and controls the storage device 1115. For example, the media agent 105 might instruct the storage device 115 to use a robotic arm or other means to load or eject a media cartridge, and to archive, migrate, or restore application specific data. The media agent 105 generally communicates with the storage device 115 via a local bus such as a SCSI adaptor. In some embodiments, the storage device 115 is communicatively coupled to the data agent 105 via a Storage Area Network (“SAN”).


Each media agent 105 maintain an index cache 110 which stores index data the system generates during backup, migration, and restore storage operations as further described herein. For example, storage operations for Microsoft Exchange data generate index data. Index data provides the system with an efficient mechanism for locating user files for recovery operations. This index data is generally stored with the data backed up to the storage device 115, and the media agent 105 that controls the storage operation also writes an additional copy of the index data to its index cache 110. The data in the media agent 105 index cache 110 is thus readily available to the system for use in storage operations and other activities without having to be first retrieved from the storage device 115.


The storage manager 100 also maintains an index cache 110. Index data is also used to indicate logical associations between components of the system, user preferences, management tasks, and other useful data. For example, the storage manager 100 might use its index cache 110 to track logical associations between media agents 105 and storage devices 115.


Index caches 110 typically reside on their corresponding storage component's hard disk or other fixed storage device. Like any cache, the index cache 110 has finite capacity and the amount of index data that can be maintained directly corresponds to the size of that portion of the disk that is allocated to the index cache 110. In one embodiment, the system manages the index cache 110 on a least recently used (“LRU”) basis as known in the art. When the capacity of the index cache 110 is reached, the system overwrites those files in the index cache 110 that have been least recently accessed with the new index data. In some embodiments, before data in the index cache 110 is overwritten, the data is copied to an index cache 110 copy in a storage device 115. If a recovery operation requires data that is no longer stored in the index cache 110, such as in the case of a cache miss, the system recovers the index data from the index cache 110 copy stored in the storage device 115.


In some embodiments, components of the system may reside and execute on the same computer. In some embodiments, a client computer 85 component such as a data agent 95, a media agent 105, or a storage manager 100 coordinates and directs local archiving, migration, and retrieval application functions as further described in application Ser. No. 09/610,738, now U.S. Pat. No. 7,035,880, issued Apr. 25, 2006. This client computer 85 component can function independently or together with other similar client computer 85 components.



FIG. 2 presents a block diagram of a hierarchically organized group of storage operation cells in a system to perform storage operations on electronic data in a computer network according to an embodiment of the invention. As shown, the system includes a master storage manager component 135, a first storage operation cell 140, a second storage operation cell 145, a third storage operation cell 150, a fourth storage operation cell 155, a fifth storage operation cell 160, and an nth storage operation cell 165.


As previously described, storage operation cells are often communicatively coupled and hierarchically organized. For example, as shown in FIG. 2, a master storage manager 135 is associated with, communicates with, and directs storage operations for a first storage operation cell 140, a second storage operation cell 145, a third storage operation cell 150, a fourth storage operation cell 155, a fifth storage operation cell 160, and an nth storage operation cell 165. In some embodiments, the master storage manager 135 is not part of any particular storage operation cell. In other embodiments (not shown), the master storage manager 135 may itself be part of a storage operation cell.


Thus, the master storage manager 135 communicates with the manager agent of the storage manager of the first storage operation cell 140 (or directly with the other components of the first cell 140) regarding storage operations performed in the first storage operation cell 140. For example, in some embodiments, the master storage manager 135 instructs the first storage operation cell 140 how and when to perform storage operations including the type of operation to perform and the data on which to perform the operation.


In other embodiments, the master storage manager 135 tracks the status of its associated storage operation cells, such as the status of jobs, system components, system resources, and other items, by communicating with manager agents (or other components) in the respective storage operation cells. In other embodiments, the master storage manager 135 tracks the status of its associated storage operation cells by receiving periodic status updates from the manager agents (or other components) in the respective cells regarding jobs, system components, system resources, and other items. For example, in some embodiments, the master storage manager 135 uses methods monitor network resources such as mapping network pathways and topologies to, among other things, physically monitor storage operations and suggest alternate routes for storing data as further described herein.


In some embodiments, the master storage manager 135 stores status information and other information regarding its associated storage operation cells and the system in an index cache or other data structure accessible to the master storage manager 135. In some embodiments, as further described herein, the presentation interface of the master storage manager 135 accesses this information to present users and system processes with information regarding the status of storage operations, storage operation cells, system components, and other information of the system.


Storage operation cells may thus be organized hierarchically. Thus, storage operation cells may inherit properties from their parents or be controlled by other storage operation cells in the hierarchy. Thus, in some embodiments as shown in FIG. 2, the second storage operation cell 145 controls or is otherwise superior to the third storage operation cell 150, the fourth storage operation cell 155, the fifth storage operation cell 160, and the nth storage operation cell 165. Similarly, the fourth storage operation cell 155 controls the fifth storage operation cell 160, and the nth storage operation cell 165.


Storage operation cells may also be organized hierarchically according to criteria such as function, geography, architectural considerations, or other factors useful in performing storage operations. For example, in one embodiment, storage operation cells are organized according to types of storage operations: the first storage operation cell 140 is directed to performing snapshot copies of primary copy data, and the second storage operation cell 145 is directed to performing backup copies of primary copy data or other data. For example, in another embodiment, the first storage operation cell 140 represents a geographic segment of an enterprise, such as a Chicago office, and a second storage operation cell 145 represents a different geographic segment, such as a New York office. In this example, the second storage operation cell 145, the third storage operation cell 150, the fourth storage operation cell 155, the fifth storage operation cell 160, and the nth storage operation cell 165 could represent departments within the New York office. Alternatively, these storage operation cells could be further divided by function performing various types of copies for the New York office or load balancing storage operations for the New York office.


In some embodiments, hierarchical organization of storage operation cells facilitates, among other things, system security and other considerations. For example, in some embodiments, only authorized users are allowed to access or control certain storage operation cells. For example, a network administrator for an enterprise might have access to all storage operation cells including the master storage manager 135. But a network administrator for only the New York office, according to a previous example, might only satisfy access criteria to have access to the second storage operation cell 145, the third storage operation cell 150, the fourth storage operation cell 155, the fifth storage operation cell 160, and the nth storage operation cell 165 which comprise the New York office storage management system.


In some embodiments, hierarchical organization of storage operation cells facilitates storage management planning and decision-making. For example, in some embodiments, a user of the master storage manager 135 can view the status of all jobs in the associated storage operation cells of the system as well as the status of each component in every storage operation cell of the system. The user can then plan and make decisions based on this global data. For example, the user can view high-level report of summary information regarding storage operations for the entire system, such as job completion status, component availability status, resource usage status (such as network pathways, etc.), and other information. The user can also drill down through menus or use other means to obtain more detailed information regarding a particular storage operation cell or group of storage operation cells.


In other embodiments, the master storage manager 135 alerts the user when a particular resource is unavailable or congested. A storage device might be full or require additional media. Alternatively, a storage manager in a particular storage operation cell may be unavailable due to hardware failure, software problems, or other reasons. In some embodiments, the master storage manager 135 (or another storage manager within the hierarchy of storage operation cells) utilizes the global data regarding its associated storage operation cells at its disposal to suggest solutions to such problems when they occur or even before they occur. For example, the master storage manager 135 might alert the user that a storage device in a particular storage operation cell was full or otherwise congested, and then suggest, based on job and data storage information contained in its index cache, an alternate storage device.


As another example, in some embodiments the master storage manager 135 (or other network storage manager) contains programming directed to analyzing the storage patterns and resources of its associated storage operation cells and which suggests optimal or alternate methods of performing storage operations. Thus, for example, the master storage manager 135 might analyze traffic patterns to determine that snapshot data should be sent via a different network segment or to a different storage operation cell or storage device. In some embodiments, users can direct specific queries to the master storage manager 135 regarding predicting storage operations or regarding storage operation information.


Systems and modules described herein may comprise software, firmware, hardware, or any combination(s) of software, firmware, or hardware suitable for the purposes described herein. Software and other modules may reside on servers, workstations, personal computers, computerized tablets, PDAs, and other devices suitable for the purposes described herein. Software and other modules may be accessible via local memory, via a network, via a browser or other application in an ASP context, or via other means suitable for the purposes described herein. Data structures described herein may comprise computer files, variables, programming arrays, programming structures, or any electronic information storage schemes or methods, or any combinations thereof, suitable for the purposes described herein. User interface elements described herein may comprise elements from graphical user interfaces, command line interfaces, and other interfaces suitable for the purposes described herein. Screenshots presented and described herein can be displayed differently as known in the art to input, access, change, manipulate, modify, alter, and work with information.


While the invention has been described and illustrated in connection with preferred embodiments, many variations and modifications as will be evident to those skilled in this art may be made without departing from the spirit and scope of the invention, and the invention is thus not to be limited to the precise details of methodology or construction set forth above as such variations and modification are intended to be included within the scope of the invention.

Claims
  • 1. A system for performing storage operations using storage operation cells, the system comprising: a storage manager component executing in one or more computer processors, wherein the storage manager component is configured to monitor the status of storage operations in at least first and second storage operation cells based on status information about the storage operations received by the storage manager component, the status information about the storage operations stored in an index associated with the storage manager,wherein the storage manager component stores in the index, logical association information indicative of associations between the first storage operation cell and the second storage operation cell, andwherein the storage manager component is configured to analyze data copy patterns of the first and second storage operation cells to suggest alternate methods of performing data copy operations based on the status information and the logical association information wherein the storage manager component suggests data copy operations intended for the first storage operation cell be performed on the second storage operation cell.
  • 2. The system of claim 1, wherein the first storage operation cell further comprises a first data agent component for obtaining application-specific data from a client device to be included in one of the data copy operations by the first storage operation cell.
  • 3. The system of claim 2, wherein the storage manager component directly controls the first data agent component during performance of the one of the data copy operations.
  • 4. The system of claim 2, wherein the storage manager component instructs another storage manager component to control the first data agent component during performance of the one of the data copy operations by the first storage operation cell.
  • 5. The system of claim 1, wherein the storage manager component comprises a component of a storage operation cell other than the first storage operation cell.
  • 6. The system of claim 1, wherein a type of the data copy operation comprises at least one of a snapshot copy, a hierarchical storage management copy and an archive copy.
  • 7. The system of claim 1, wherein the first storage operation cell comprises a higher access criteria than the second storage operation cell.
  • 8. The system of claim 1, wherein the storage manager component provides predictions of storage operations.
  • 9. The system of claim 1, wherein a first authorized user is allowed to access the second storage operation cell, but not the first storage operation cell.
  • 10. The system of claim 1, wherein logical association information comprises hierarchical information indicative of a hierarchical association between the first and second storage operation cells.
  • 11. A method for performing storage operations using storage operation cells, the system comprising: monitoring status of storage operations in at least first and second storage operation cells based on status information received by the storage manager component with a storage manager component executing in one or more computer processors and storing the status information in an index associated with the storage manager;storing in the index, logical association information indicative of associations between the first storage operation cell and the second storage operation cell; andanalyzing, with the storage manager component, data copy patterns of the first and second storage operation cells to suggest alternate methods of performing data copy operations based on the status information and the logical association information, wherein the storage manager component suggests data copy operations intended for the first storage operation cell be performed on the second storage operation cell.
  • 12. The method of claim 11, further comprising obtaining application-specific data from a client device to be included in one of the data copy operations by the first storage operation cell.
  • 13. The method of claim 12, wherein the storage manager component directly controls obtaining the application-specific data during performance of the one of the data copy operations.
  • 14. The method of claim 12, wherein the storage manager component instructs another storage manager component to control obtaining application-specific data during performance of the one of the data copy operations by the first storage operation cell.
  • 15. The method of claim 11, wherein the storage manager component comprises a component of a storage operation cell other than the first storage operation cell.
  • 16. The method of claim 11, wherein a type of the data copy operation comprises at least one of a snapshot copy, a hierarchical storage management copy and an archive copy.
  • 17. The method of claim 11, wherein the first storage operation cell comprises a higher access criteria than the second storage operation cell.
  • 18. The method of claim 11, wherein the storage manager component provides predictions of storage operations.
  • 19. The method of claim 11, wherein a first authorized user is allowed to access the second storage operation cell, but not the first storage operation cell.
  • 20. The method of claim 11, wherein logical association information comprises hierarchical information indicative of a hierarchical association between the first and second storage operation cells.
RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 13/356,471, filed Jan. 23, 2012, which is a continuation of U.S. patent application Ser. No. 12/820,533, filed Jun. 22, 2010, now U.S. Pat. No. 8,103,829, issued Jan. 24, 2012, which is a continuation of U.S. patent application Ser. No. 12/271,677, filed Nov. 14, 2008, now U.S. Pat. No. 7,757,043, issued Jul. 13, 2010, which is a continuation of U.S. patent application Ser. No. 10/877,831, filed Jun. 25, 2004, now U.S. Pat. No. 7,454,569, issued Nov. 18, 2008, which claims benefit of priority to U.S. Provisional Patent Application No. 60/482,305, filed Jun. 25, 2003, each of which is hereby incorporated herein by referenced in its entirety. This application is also related to the following patents and pending applications, each of which is hereby incorporated herein by reference in its entirety: U.S. patent application Ser. No. 09/354,058, titled HIERARCHICAL BACKUP AND RETRIEVAL SYSTEM, filed Jul. 15, 1999, now U.S. Pat. No. 7,395,282, issued Jul. 1, 2008;U.S. Pat. No. 6,418,478, titled PIPELINED HIGH SPEED DATA TRANSFER MECHANISM, issued Jul. 9, 2002;U.S. patent application Ser. No. 09/610,738, titled MODULAR BACKUP AND RETRIEVAL SYSTEM USED IN CONJUNCTION WITH A STORAGE AREA NETWORK, filed Jul. 6, 2000, now U.S. Pat. No. 7,035,880, issued Apr. 25, 2006;U.S. patent application Ser. No. 09/774,268, titled LOGICAL VIEW AND ACCESS TO PHYSICAL STORAGE IN MODULAR DATA AND STORAGE MANAGEMENT SYSTEM, filed Jan. 30, 2001, now U.S. Pat. No. 6,542,972, issued Apr. 1, 2003;U.S. patent application Ser. No. 09/774,301, titled LOGICAL VIEW AND ACCESS TO DATA MANAGED BY A MODULAR DATA AND STORAGE MANAGEMENT SYSTEM, filed Jan. 30, 2001, now U.S. Pat. No. 6,658,436, issued Dec. 2, 2003;U.S. Patent Application No. 60/409,183, titled DYNAMIC STORAGE DEVICE POOLING IN A COMPUTER SYSTEM, filed Sep. 9, 2002;U.S. patent application Ser. No. 10/262,556, titled METHOD FOR MANAGING SNAPSHOTS GENERATED BY AN OPERATING SYSTEM OR OTHER APPLICATION, filed Sep. 30, 2002, now U.S. Pat. No. 7,346,623, issued Mar. 18, 2008;U.S. Provisional Patent Application No. 60/416,717, titled SYSTEM AND METHOD FOR MOUNTING QUICK RECOVERY VOLUMES, filed Oct. 7, 2002; andU.S. Patent Application No. 60/460,234, SYSTEM AND METHOD FOR PERFORMING STORAGE OPERATIONS IN A COMPUTER NETWORK, filed Apr. 3, 2003.

US Referenced Citations (592)
Number Name Date Kind
4296465 Lemak Oct 1981 A
4686620 Ng Aug 1987 A
4751639 Corcoran et al. Jun 1988 A
4995035 Cole et al. Feb 1991 A
5005122 Griffin et al. Apr 1991 A
5093912 Dong et al. Mar 1992 A
5125075 Goodale et al. Jun 1992 A
5133065 Cheffetz et al. Jul 1992 A
5140683 Gallo et al. Aug 1992 A
5163148 Walls Nov 1992 A
5193154 Kitajima et al. Mar 1993 A
5204958 Cheng et al. Apr 1993 A
5212772 Masters May 1993 A
5212784 Sparks May 1993 A
5226157 Nakano et al. Jul 1993 A
5239647 Anglin et al. Aug 1993 A
5241668 Eastridge et al. Aug 1993 A
5241670 Eastridge et al. Aug 1993 A
5265159 Kung Nov 1993 A
5276860 Fortier et al. Jan 1994 A
5276867 Kenley et al. Jan 1994 A
5287500 Stoppani, Jr. Feb 1994 A
5301351 Jippo Apr 1994 A
5311509 Heddes et al. May 1994 A
5321816 Rogan et al. Jun 1994 A
5333251 Urabe et al. Jul 1994 A
5333315 Saether et al. Jul 1994 A
5347653 Flynn et al. Sep 1994 A
5386545 Gombos, Jr. et al. Jan 1995 A
5387459 Hung Feb 1995 A
5410700 Fecteau et al. Apr 1995 A
5426284 Doyle Jun 1995 A
5448718 Cohn et al. Sep 1995 A
5448724 Hayashi Sep 1995 A
5455926 Keele et al. Oct 1995 A
5491810 Allen Feb 1996 A
5495607 Pisello et al. Feb 1996 A
5504873 Martin et al. Apr 1996 A
5537568 Yanai et al. Jul 1996 A
5544345 Carpenter et al. Aug 1996 A
5544347 Yanai et al. Aug 1996 A
5555404 Torbjornsen et al. Sep 1996 A
5559957 Balk Sep 1996 A
5559991 Kanfi Sep 1996 A
5564037 Lam Oct 1996 A
5574898 Leblang et al. Nov 1996 A
5598546 Blomgren Jan 1997 A
5608865 Midgely et al. Mar 1997 A
5613134 Lucus et al. Mar 1997 A
5615392 Harrison et al. Mar 1997 A
5619644 Crockett et al. Apr 1997 A
5634052 Morris May 1997 A
5638509 Dunphy et al. Jun 1997 A
5642496 Kanfi Jun 1997 A
5649185 Antognini et al. Jul 1997 A
5659614 Bailey Aug 1997 A
5666501 Jones et al. Sep 1997 A
5673381 Huai et al. Sep 1997 A
5673382 Cannon et al. Sep 1997 A
5675511 Prasad et al. Oct 1997 A
5677900 Nishida et al. Oct 1997 A
5682513 Candelaria et al. Oct 1997 A
5687343 Fecteau et al. Nov 1997 A
5699361 Ding et al. Dec 1997 A
5719786 Nelson et al. Feb 1998 A
5729743 Squibb Mar 1998 A
5734817 Roffe et al. Mar 1998 A
5737747 Vishlitzky et al. Apr 1998 A
5740405 DeGraaf Apr 1998 A
5742807 Masinter Apr 1998 A
5751997 Kullick et al. May 1998 A
5758359 Saxon May 1998 A
5758649 Iwashita et al. Jun 1998 A
5761677 Senator et al. Jun 1998 A
5761734 Pfeffer et al. Jun 1998 A
5764972 Crouse et al. Jun 1998 A
5778165 Saxon Jul 1998 A
5778395 Whiting et al. Jul 1998 A
5790828 Jost Aug 1998 A
5793867 Cordery Aug 1998 A
5805920 Sprenkle et al. Sep 1998 A
5806058 Mori et al. Sep 1998 A
5812398 Nielsen Sep 1998 A
5812748 Ohran et al. Sep 1998 A
5813009 Johnson et al. Sep 1998 A
5813013 Shakib et al. Sep 1998 A
5813017 Morris Sep 1998 A
5829045 Motoyama Oct 1998 A
5829046 Tzelnic et al. Oct 1998 A
5832522 Blickenstaff et al. Nov 1998 A
5835953 Ohran Nov 1998 A
5845257 Fu et al. Dec 1998 A
5860073 Ferrel et al. Jan 1999 A
5860104 Witt et al. Jan 1999 A
5864846 Voorhees et al. Jan 1999 A
5864871 Kitain et al. Jan 1999 A
5875478 Blumenau Feb 1999 A
5875481 Ashton et al. Feb 1999 A
5878230 Weber et al. Mar 1999 A
5881311 Woods Mar 1999 A
5884067 Storm et al. Mar 1999 A
5887134 Ebrahim Mar 1999 A
5893139 Kamiyama Apr 1999 A
5896531 Curtis et al. Apr 1999 A
5897642 Capossela et al. Apr 1999 A
5898431 Webster et al. Apr 1999 A
5901327 Ofek May 1999 A
5924102 Perks Jul 1999 A
5926836 Blumenau Jul 1999 A
5933104 Kimura Aug 1999 A
5933601 Fanshier et al. Aug 1999 A
5950205 Aviani, Jr. Sep 1999 A
5956519 Wise et al. Sep 1999 A
5956733 Nakano et al. Sep 1999 A
5958005 Thorne et al. Sep 1999 A
5966730 Zulch Oct 1999 A
5970030 Dimitri et al. Oct 1999 A
5970233 Liu et al. Oct 1999 A
5970255 Tran et al. Oct 1999 A
5974563 Beeler, Jr. Oct 1999 A
5978841 Berger Nov 1999 A
5983239 Cannon Nov 1999 A
5983368 Noddings Nov 1999 A
5987478 See et al. Nov 1999 A
5991753 Wilde Nov 1999 A
5995091 Near et al. Nov 1999 A
6000020 Chin et al. Dec 1999 A
6003089 Shaffer et al. Dec 1999 A
6009274 Fletcher et al. Dec 1999 A
6012053 Pant et al. Jan 2000 A
6012090 Chung et al. Jan 2000 A
6012415 Linseth Jan 2000 A
6016553 Schneider et al. Jan 2000 A
6018744 Mamiya et al. Jan 2000 A
6021415 Cannon et al. Feb 2000 A
6023710 Steiner et al. Feb 2000 A
6026414 Anglin Feb 2000 A
6026437 Muschett et al. Feb 2000 A
6052735 Ulrich et al. Apr 2000 A
6061671 Baker et al. May 2000 A
6064821 Shough et al. May 2000 A
6070228 Belknap et al. May 2000 A
6073128 Pongracz et al. Jun 2000 A
6073137 Brown et al. Jun 2000 A
6073220 Gunderson Jun 2000 A
6076148 Kedem et al. Jun 2000 A
6078934 Lahey et al. Jun 2000 A
6081883 Popelka et al. Jun 2000 A
6085030 Whitehead et al. Jul 2000 A
6088694 Burns et al. Jul 2000 A
6091518 Anabuki Jul 2000 A
6094416 Ying Jul 2000 A
6101585 Brown et al. Aug 2000 A
6105037 Kishi Aug 2000 A
6105129 Meier et al. Aug 2000 A
6108640 Slotznick Aug 2000 A
6108712 Hayes, Jr. Aug 2000 A
6112239 Kenner et al. Aug 2000 A
6122668 Teng et al. Sep 2000 A
6131095 Low et al. Oct 2000 A
6131190 Sidwell Oct 2000 A
6137864 Yaker Oct 2000 A
6148377 Carter et al. Nov 2000 A
6148412 Cannon et al. Nov 2000 A
6151590 Cordery et al. Nov 2000 A
6154787 Urevig et al. Nov 2000 A
6154852 Amundson et al. Nov 2000 A
6161111 Mutalik et al. Dec 2000 A
6161192 Lubbers et al. Dec 2000 A
6167402 Yeager Dec 2000 A
6175829 Li et al. Jan 2001 B1
6182198 Hubis et al. Jan 2001 B1
6189051 Oh et al. Feb 2001 B1
6212512 Barney et al. Apr 2001 B1
6212521 Minami et al. Apr 2001 B1
6223269 Blumenau Apr 2001 B1
6226759 Miller et al. May 2001 B1
6230164 Rekieta et al. May 2001 B1
6249795 Douglis Jun 2001 B1
6253217 Dourish et al. Jun 2001 B1
6260069 Anglin Jul 2001 B1
6263368 Martin Jul 2001 B1
6266679 Szalwinski et al. Jul 2001 B1
6266784 Hsiao et al. Jul 2001 B1
6269382 Cabrera et al. Jul 2001 B1
6269431 Dunham Jul 2001 B1
6275953 Vahalia et al. Aug 2001 B1
6292783 Rohler Sep 2001 B1
6295541 Bodnar Sep 2001 B1
6298439 Beglin Oct 2001 B1
6301592 Aoyama et al. Oct 2001 B1
6304880 Kishi Oct 2001 B1
6314439 Bates et al. Nov 2001 B1
6314460 Knight et al. Nov 2001 B1
6324581 Xu et al. Nov 2001 B1
6327590 Chidlovskii et al. Dec 2001 B1
6327612 Watanabe Dec 2001 B1
6328766 Long Dec 2001 B1
6330570 Crighton Dec 2001 B1
6330572 Sitka Dec 2001 B1
6330589 Kennedy Dec 2001 B1
6330642 Carteau Dec 2001 B1
6341287 Sziklai et al. Jan 2002 B1
6343287 Kumar et al. Jan 2002 B1
6343324 Hubis et al. Jan 2002 B1
6345288 Reed et al. Feb 2002 B1
6350199 Williams et al. Feb 2002 B1
6351763 Kawanaka Feb 2002 B1
6351764 Voticky et al. Feb 2002 B1
RE37601 Eastridge et al. Mar 2002 E
6353878 Dunham Mar 2002 B1
6356801 Goodman et al. Mar 2002 B1
6356863 Sayle Mar 2002 B1
6360306 Bergsten Mar 2002 B1
6363462 Bergsten Mar 2002 B1
6367029 Mayhead et al. Apr 2002 B1
6367073 Elledge Apr 2002 B2
6374336 Peters et al. Apr 2002 B1
6374363 Wu et al. Apr 2002 B1
6389432 Pothapragada et al. May 2002 B1
6389459 McDowell May 2002 B1
6396513 Helfman et al. May 2002 B1
6397308 Ofek et al. May 2002 B1
6418478 Ignatius et al. Jul 2002 B1
6421709 McCormick et al. Jul 2002 B1
6421711 Blumenau et al. Jul 2002 B1
6438595 Blumenau et al. Aug 2002 B1
6442600 Anderson Aug 2002 B1
6442706 Wahl et al. Aug 2002 B1
6453325 Cabrera et al. Sep 2002 B1
6466592 Chapman Oct 2002 B1
6466973 Jaffe Oct 2002 B2
6470332 Weschler Oct 2002 B1
6473794 Guheen et al. Oct 2002 B1
6484162 Edlund et al. Nov 2002 B1
6487561 Ofek et al. Nov 2002 B1
6487644 Huebsch et al. Nov 2002 B1
6493811 Blades et al. Dec 2002 B1
6502205 Yanai et al. Dec 2002 B1
6519679 Devireddy et al. Feb 2003 B2
6535910 Suzuki et al. Mar 2003 B1
6538669 Lagueux, Jr. et al. Mar 2003 B1
6540623 Jackson Apr 2003 B2
6542909 Tamer et al. Apr 2003 B1
6542972 Ignatius et al. Apr 2003 B2
6546545 Honarvar et al. Apr 2003 B1
6549918 Probert et al. Apr 2003 B1
6553410 Kikinis Apr 2003 B2
6557039 Leong et al. Apr 2003 B1
6564219 Lee et al. May 2003 B1
6564228 O'Connor May 2003 B1
6581143 Gagne et al. Jun 2003 B2
6593656 Ahn et al. Jul 2003 B2
6604149 Deo et al. Aug 2003 B1
6615241 Miller et al. Sep 2003 B1
6618771 Leja et al. Sep 2003 B1
6629110 Cane et al. Sep 2003 B2
6631477 LeCrone et al. Oct 2003 B1
6631493 Ottesen et al. Oct 2003 B2
6647396 Parnell et al. Nov 2003 B2
6647399 Zaremba Nov 2003 B2
6647409 Sherman et al. Nov 2003 B1
6654825 Clapp et al. Nov 2003 B2
6658436 Oshinsky et al. Dec 2003 B2
6658526 Nguyen et al. Dec 2003 B2
6675177 Webb Jan 2004 B1
6704933 Tanaka et al. Mar 2004 B1
6721767 De Meno et al. Apr 2004 B2
6721784 Leonard et al. Apr 2004 B1
6728733 Tokui Apr 2004 B2
6732088 Glance May 2004 B1
6732124 Koseki et al. May 2004 B1
6732231 Don et al. May 2004 B1
6732244 Ashton et al. May 2004 B2
6742092 Huebsch et al. May 2004 B1
6745178 Emens et al. Jun 2004 B1
6757794 Cabrera et al. Jun 2004 B2
6760723 Oshinsky et al. Jul 2004 B2
6763351 Subramaniam et al. Jul 2004 B1
6789161 Blendermann et al. Sep 2004 B1
6795828 Ricketts Sep 2004 B2
6816941 Carlson et al. Nov 2004 B1
6820070 Goldman et al. Nov 2004 B2
6839741 Tsai Jan 2005 B1
6839803 Loh et al. Jan 2005 B1
6850994 Gabryjelski Feb 2005 B2
6860422 Hull et al. Mar 2005 B2
6865568 Chau Mar 2005 B2
6868424 Jones et al. Mar 2005 B2
6871163 Hiller et al. Mar 2005 B2
6871182 Winnard et al. Mar 2005 B1
6874023 Pennell et al. Mar 2005 B1
6886020 Zahavi et al. Apr 2005 B1
6892221 Ricart et al. May 2005 B2
6912627 Matsunami et al. Jun 2005 B2
6912645 Dorward et al. Jun 2005 B2
6941304 Gainey et al. Sep 2005 B2
6948038 Berkowitz et al. Sep 2005 B2
6952758 Chron et al. Oct 2005 B2
6957186 Guheen et al. Oct 2005 B1
6968351 Butterworth Nov 2005 B2
6970997 Shibayama et al. Nov 2005 B2
6973553 Archibald, Jr. et al. Dec 2005 B1
6976039 Chefalas et al. Dec 2005 B2
6978265 Schumacher Dec 2005 B2
6983351 Gibble et al. Jan 2006 B2
6995675 Curkendall et al. Feb 2006 B2
6996616 Leighton et al. Feb 2006 B1
7003519 Biettron et al. Feb 2006 B1
7003641 Prahlad et al. Feb 2006 B2
7028079 Mastrianni et al. Apr 2006 B2
7035880 Crescenti et al. Apr 2006 B1
7039860 Gautestad May 2006 B1
7058661 Ciaramitaro et al. Jun 2006 B2
7062761 Slavin et al. Jun 2006 B2
7076685 Pillai et al. Jul 2006 B2
7082441 Zahavi et al. Jul 2006 B1
7085904 Mizuno et al. Aug 2006 B2
7096315 Takeda et al. Aug 2006 B2
7099901 Sutoh et al. Aug 2006 B2
7103731 Gibble et al. Sep 2006 B2
7103740 Colgrove et al. Sep 2006 B1
7107298 Prahlad et al. Sep 2006 B2
7107395 Ofek et al. Sep 2006 B1
7107416 Stuart et al. Sep 2006 B2
7120757 Tsuge Oct 2006 B2
7130970 Devassy et al. Oct 2006 B2
7133870 Tripp et al. Nov 2006 B1
7134041 Murray et al. Nov 2006 B2
7139826 Watanabe et al. Nov 2006 B2
7146387 Russo et al. Dec 2006 B1
7149893 Leonard et al. Dec 2006 B1
7155421 Haldar Dec 2006 B1
7155465 Lee et al. Dec 2006 B2
7155481 Prahlad et al. Dec 2006 B2
7155633 Tuma et al. Dec 2006 B2
7159081 Suzuki Jan 2007 B2
7171468 Yeung et al. Jan 2007 B2
7171585 Gail et al. Jan 2007 B2
7174312 Harper et al. Feb 2007 B2
7188141 Novaes Mar 2007 B2
7194454 Hansen et al. Mar 2007 B2
7240100 Wein et al. Jul 2007 B1
7246140 Therrien et al. Jul 2007 B2
7246207 Kottomtharayil et al. Jul 2007 B2
7269612 Devarakonda et al. Sep 2007 B2
7269664 Hütsch et al. Sep 2007 B2
7272606 Borthakur et al. Sep 2007 B2
7278142 Bandhole et al. Oct 2007 B2
7287047 Kavuri Oct 2007 B2
7290017 Wang et al. Oct 2007 B1
7293133 Colgrove et al. Nov 2007 B1
7313659 Suzuki Dec 2007 B2
7315923 Retnamma et al. Jan 2008 B2
7315924 Prahlad et al. Jan 2008 B2
7328225 Beloussov et al. Feb 2008 B1
7328325 Solis et al. Feb 2008 B1
7343356 Prahlad et al. Mar 2008 B2
7343365 Farnham et al. Mar 2008 B2
7343453 Prahlad et al. Mar 2008 B2
7343459 Prahlad et al. Mar 2008 B2
7346623 Prahlad et al. Mar 2008 B2
7346676 Swildens et al. Mar 2008 B1
7346751 Prahlad et al. Mar 2008 B2
7356657 Mikami Apr 2008 B2
7359917 Winter et al. Apr 2008 B2
7376947 Evers May 2008 B2
7379978 Anderson et al. May 2008 B2
7380072 Kottomtharayil et al. May 2008 B2
7386535 Kalucha et al. Jun 2008 B1
7386552 Kitamura et al. Jun 2008 B2
7389311 Crescenti et al. Jun 2008 B1
7395282 Crescenti et al. Jul 2008 B1
7409509 Devassy et al. Aug 2008 B2
7424543 Rice, III Sep 2008 B2
7430587 Malone et al. Sep 2008 B2
7433301 Akahane et al. Oct 2008 B2
7434219 De Meno et al. Oct 2008 B2
7447692 Oshinsky et al. Nov 2008 B2
7454569 Kavuri et al. Nov 2008 B2
7457790 Kochunni et al. Nov 2008 B2
7467167 Patterson Dec 2008 B2
7472142 Prahlad et al. Dec 2008 B2
7472238 Gokhale Dec 2008 B1
7484054 Kottomtharayil et al. Jan 2009 B2
7490207 Amarendran Feb 2009 B2
7496589 Jain et al. Feb 2009 B1
7496841 Hadfield et al. Feb 2009 B2
7500053 Kavuri et al. Mar 2009 B1
7500150 Sharma et al. Mar 2009 B2
7509316 Greenblatt et al. Mar 2009 B2
7512601 Cucerzan et al. Mar 2009 B2
7519726 Palliyil et al. Apr 2009 B2
7523483 Dogan Apr 2009 B2
7529748 Wen et al. May 2009 B2
7532340 Koppich et al. May 2009 B2
7536291 Retnamma et al. May 2009 B1
7543125 Gokhale Jun 2009 B2
7546324 Prahlad et al. Jun 2009 B2
7565484 Ghosal et al. Jul 2009 B2
7577689 Masinter et al. Aug 2009 B1
7577694 Nakano et al. Aug 2009 B2
7581077 Ignatius et al. Aug 2009 B2
7584469 Mitekura et al. Sep 2009 B2
7587715 Barrett et al. Sep 2009 B1
7593935 Sullivan Sep 2009 B2
7596586 Gokhale et al. Sep 2009 B2
7596713 Mani-Meitav Sep 2009 B2
7603626 Williams et al. Oct 2009 B2
7606844 Kottomtharayil Oct 2009 B2
7610285 Zoellner et al. Oct 2009 B1
7613748 Brockway et al. Nov 2009 B2
7617253 Prahlad et al. Nov 2009 B2
7617262 Prahlad et al. Nov 2009 B2
7617541 Plotkin et al. Nov 2009 B2
7627598 Burke Dec 2009 B1
7627617 Kavuri et al. Dec 2009 B2
7636743 Erofeev Dec 2009 B2
7651593 Prahlad et al. Jan 2010 B2
7661028 Erofeev Feb 2010 B2
7668798 Scanlon et al. Feb 2010 B2
7668884 Prahlad et al. Feb 2010 B2
7673175 Mora et al. Mar 2010 B2
7676542 Moser et al. Mar 2010 B2
7685126 Patel et al. Mar 2010 B2
7689899 Leymaster et al. Mar 2010 B2
7716171 Kryger May 2010 B2
7730031 Forster Jun 2010 B2
7734593 Prahlad et al. Jun 2010 B2
7734669 Kottomtharayil et al. Jun 2010 B2
7734715 Hyakutake et al. Jun 2010 B2
7751628 Reisman Jul 2010 B1
7757043 Kavuri et al. Jul 2010 B2
7792789 Prahlad et al. Sep 2010 B2
7801871 Gosnell Sep 2010 B2
7802067 Prahlad et al. Sep 2010 B2
7814118 Kottomtharayil et al. Oct 2010 B2
7827266 Gupta Nov 2010 B2
7831793 Chakravarty et al. Nov 2010 B2
7840537 Gokhale et al. Nov 2010 B2
7844676 Prahlad et al. Nov 2010 B2
7865517 Prahlad et al. Jan 2011 B2
7870355 Erofeev Jan 2011 B2
7873808 Stewart Jan 2011 B2
7877351 Crescenti et al. Jan 2011 B2
7882077 Gokhale et al. Feb 2011 B2
7882093 Kottomtharayil et al. Feb 2011 B2
7890718 Gokhale Feb 2011 B2
7890719 Gokhale Feb 2011 B2
7937393 Prahlad et al. May 2011 B2
7937420 Tabellion et al. May 2011 B2
7937702 De Meno et al. May 2011 B2
7962455 Erofeev Jun 2011 B2
7984063 Kottomtharayil et al. Jul 2011 B2
8037028 Prahlad et al. Oct 2011 B2
8041673 Crescenti et al. Oct 2011 B2
8046331 Sanghavi et al. Oct 2011 B1
8055627 Prahlad et al. Nov 2011 B2
8060514 Arrouye et al. Nov 2011 B2
8078583 Prahlad et al. Dec 2011 B2
8086809 Prahlad et al. Dec 2011 B2
8103670 Oshinsky et al. Jan 2012 B2
8103829 Kavuri et al. Jan 2012 B2
8121983 Prahlad et al. Feb 2012 B2
8166263 Prahlad Apr 2012 B2
8204859 Ngo Jun 2012 B2
8214444 Prahlad et al. Jul 2012 B2
8219524 Gokhale Jul 2012 B2
8266106 Prahlad et al. Sep 2012 B2
8266397 Prahlad et al. Sep 2012 B2
8271830 Erofeev Sep 2012 B2
8352422 Prahlad et al. Jan 2013 B2
8352433 Crescenti et al. Jan 2013 B2
8402219 Kavuri et al. Mar 2013 B2
8433679 Crescenti et al. Apr 2013 B2
8504634 Prahlad et al. Aug 2013 B2
8566278 Crescenti et al. Oct 2013 B2
8577844 Prahlad et al. Nov 2013 B2
8725731 Oshinsky et al. May 2014 B2
8725964 Prahlad et al. May 2014 B2
20020004883 Nguyen et al. Jan 2002 A1
20020032878 Karpf Mar 2002 A1
20020040376 Yamanaka et al. Apr 2002 A1
20020042869 Tate et al. Apr 2002 A1
20020049626 Mathias et al. Apr 2002 A1
20020049778 Bell et al. Apr 2002 A1
20020049883 Schneider et al. Apr 2002 A1
20020069324 Gerasimov et al. Jun 2002 A1
20020103848 Giacomini et al. Aug 2002 A1
20020107877 Whiting et al. Aug 2002 A1
20020120858 Porter et al. Aug 2002 A1
20020161753 Inaba et al. Oct 2002 A1
20030046313 Leung et al. Mar 2003 A1
20030050979 Takahashi Mar 2003 A1
20030061491 Jaskiewicz et al. Mar 2003 A1
20030097361 Huang et al. May 2003 A1
20030101086 San Miguel May 2003 A1
20030163399 Harper et al. Aug 2003 A1
20030172158 Pillai et al. Sep 2003 A1
20040039689 Penney et al. Feb 2004 A1
20040107199 Dalrymple et al. Jun 2004 A1
20040193953 Callahan et al. Sep 2004 A1
20040205206 Naik et al. Oct 2004 A1
20040230829 Dogan et al. Nov 2004 A1
20040267815 De Mes Dec 2004 A1
20050033800 Kavuri et al. Feb 2005 A1
20050039069 Prahlad et al. Feb 2005 A1
20050044114 Kottomtharayil et al. Feb 2005 A1
20050097070 Enis et al. May 2005 A1
20050146510 Ostergard Jul 2005 A1
20050246510 Retnamma et al. Nov 2005 A1
20050251786 Citron et al. Nov 2005 A1
20050268068 Ignatius et al. Dec 2005 A1
20050278207 Ronnewinkel Dec 2005 A1
20060005048 Osaki et al. Jan 2006 A1
20060010154 Prahlad et al. Jan 2006 A1
20060010227 Atluri Jan 2006 A1
20060036619 Fuerst et al. Feb 2006 A1
20060070061 Cox et al. Mar 2006 A1
20060115802 Reynolds Jun 2006 A1
20060116999 Dettinger et al. Jun 2006 A1
20060149604 Miller Jul 2006 A1
20060149724 Ritter et al. Jul 2006 A1
20060224846 Amarendran et al. Oct 2006 A1
20060282900 Johnson et al. Dec 2006 A1
20070022145 Kavuri Jan 2007 A1
20070028229 Knatcher Feb 2007 A1
20070043715 Kaushik et al. Feb 2007 A1
20070043956 El Far et al. Feb 2007 A1
20070061266 Moore et al. Mar 2007 A1
20070061298 Wilson et al. Mar 2007 A1
20070078913 Crescenti et al. Apr 2007 A1
20070100867 Celik et al. May 2007 A1
20070143756 Gokhale Jun 2007 A1
20070166674 Kochunni et al. Jul 2007 A1
20070174536 Nakagawa et al. Jul 2007 A1
20070183224 Erofeev Aug 2007 A1
20070250810 Tittizer et al. Oct 2007 A1
20070288536 Sen et al. Dec 2007 A1
20070296258 Calvert et al. Dec 2007 A1
20080059515 Fulton Mar 2008 A1
20080229037 Bunte et al. Sep 2008 A1
20080243855 Prahlad et al. Oct 2008 A1
20080243914 Prahlad et al. Oct 2008 A1
20080243957 Prahlad et al. Oct 2008 A1
20080243958 Prahlad et al. Oct 2008 A1
20080282048 Miura Nov 2008 A1
20080288947 Gokhale et al. Nov 2008 A1
20080288948 Attarde et al. Nov 2008 A1
20080320319 Muller et al. Dec 2008 A1
20090171883 Kochunni et al. Jul 2009 A1
20090177719 Kavuri Jul 2009 A1
20090228894 Gokhale Sep 2009 A1
20090248762 Prahlad et al. Oct 2009 A1
20090271791 Gokhale Oct 2009 A1
20090319534 Gokhale Dec 2009 A1
20090319585 Gokhale Dec 2009 A1
20090320029 Kottomtharayil Dec 2009 A1
20090320033 Gokhale et al. Dec 2009 A1
20090320037 Gokhale et al. Dec 2009 A1
20100031017 Gokhale et al. Feb 2010 A1
20100049753 Prahlad et al. Feb 2010 A1
20100070466 Prahlad et al. Mar 2010 A1
20100070474 Lad Mar 2010 A1
20100070725 Prahlad et al. Mar 2010 A1
20100070726 Ngo et al. Mar 2010 A1
20100076932 Lad Mar 2010 A1
20100094808 Erofeev Apr 2010 A1
20100100529 Erofeev Apr 2010 A1
20100114837 Prahlad et al. May 2010 A1
20100122053 Prahlad et al. May 2010 A1
20100131461 Prahlad et al. May 2010 A1
20100145909 Ngo Jun 2010 A1
20100179941 Agrawal et al. Jul 2010 A1
20100205150 Prahlad et al. Aug 2010 A1
20110066817 Kavuri et al. Mar 2011 A1
20110072097 Prahlad et al. Mar 2011 A1
20110093471 Brockway et al. Apr 2011 A1
20110173207 Kottomtharayil et al. Jul 2011 A1
20120030177 Crescenti et al. Feb 2012 A1
20120059797 Prahlad et al. Mar 2012 A1
20120089800 Prahlad et al. Apr 2012 A1
20120124042 Oshinsky et al. May 2012 A1
20120124289 Kavuri et al. May 2012 A1
20120330966 Prahlad et al. Dec 2012 A1
20120331071 Prahlad et al. Dec 2012 A1
20130006944 Prahlad et al. Jan 2013 A1
20130007391 Crescenti et al. Jan 2013 A1
20130326178 Crescenti et al. Dec 2013 A1
20140007109 DeMeno et al. Jan 2014 A1
20140025914 Prahlad et al. Jan 2014 A1
20140250123 Prahlad et al. Sep 2014 A1
Foreign Referenced Citations (41)
Number Date Country
0259912 Mar 1988 EP
0341230 Nov 1989 EP
0381651 Aug 1990 EP
0405926 Jan 1991 EP
0467546 Jan 1992 EP
0599466 Jun 1994 EP
0670543 Sep 1995 EP
0717346 Jun 1996 EP
0774715 May 1997 EP
0809184 Nov 1997 EP
0862304 Sep 1998 EP
0899662 Mar 1999 EP
0910019 Apr 1999 EP
0981090 Feb 2000 EP
0 986 011 Mar 2000 EP
0986011 Mar 2000 EP
1035690 Sep 2000 EP
1174795 Jan 2002 EP
2216368 Oct 1989 GB
1064178 Aug 2013 HK
1064178 Aug 2013 HK
07-046271 Feb 1995 JP
07-073080 Mar 1995 JP
08-044598 Feb 1996 JP
H11-102314 Apr 1999 JP
H11-259459 Sep 1999 JP
2000-035969 Feb 2000 JP
2001-60175 Mar 2001 JP
2003-531435 Oct 2003 JP
WO 9417474 Aug 1994 WO
WO 9513580 May 1995 WO
WO 9839707 Sep 1998 WO
WO 9912098 Mar 1999 WO
WO 9914692 Mar 1999 WO
WO 9923585 May 1999 WO
WO 0058865 Oct 2000 WO
WO 0104756 Jan 2001 WO
WO 0106368 Jan 2001 WO
WO 0116693 Mar 2001 WO
WO 0180005 Oct 2001 WO
WO 2005050381 Jun 2005 WO
Non-Patent Literature Citations (51)
Entry
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., 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, 1995-Mar. 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.
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).
http://en.wikipedia.org/wiki/Naive—Bayes—classifier, printed on Jun. 1, 2010, in 7 pages.
Jander, “Launching Storage-Area Net,” Data Communications, US, McGraw Hill, NY, vol. 27, No. 4(Mar. 21, 1998), pp. 64-72.
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).
Szor, The Art of Virus Research and Defense, Symantec Press (2005) ISBN 0-321-30454-3, Part 1.
Szor, The Art of Virus Research and Defense, Symantec Press (2005) ISBN 0-321-30454-3, Part 2.
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, Part 1.
Witten et al., Data Mining: Practical Machine Learning Tools and Techniques, Ian H. Witten & Eibe Frank, Elsevier (2005) ISBN 0-12-088407-0, Part 2.
Communication in European Application No. 02 747 883.3, mailed Jul. 20, 2007).
European Communication, Application No. 01906806.3, dated Sep. 21, 2010, 6 pages.
European Examination Report, Application No. 01906806.3-1244, dated Sep. 13, 2006, 3 pages.
European Office Action dated Mar. 26, 2008, EP019068337.
European Office Action dated Apr. 22, 2008, EP02778952.8.
International Preliminary Report on Patentability dated May 15, 2006, PCT/US2004/038278 filed Nov. 15, 2004, (Publication No. WO2005/050381).
International Preliminary Report on Patentability, PCT/US2004/038278, May 15, 2006.
International Search Report and Preliminary Report on Patentability dated Sep. 29, 2001, PCT/US2001/003209.
International Search Report and Preliminary Report on Patentability dated May 4, 2001, PCT/US2000/019363.
International Search Report and Preliminary Report on Patentability dated Feb. 21, 2002, PCT/US2001/003183.
International Search Report and Preliminary Report on Patentability dated Mar. 3, 2003, PCT/US2002/018169.
International Search Report dated Aug. 22, 2002, PCT/US2002/017973.
International Search Report dated Dec. 21, 2000, PCT/US2000/019324.
International Search Report dated Dec. 21, 2000, PCT/US2000/019329.
International Search Report dated Dec. 23, 2003, PCT/US2001/003088.
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/US2004/03827, Feb. 1, 2006.
Japanese Office Action dated Jul. 15, 2008, Application No. 2003/502696.
Supplementary European Search Report dated Sep. 21, 2006, EP02778952.8.
Translation of Japanese Office Action dated Mar. 25, 2008, Application No. 2003-504235.
U.S. Appl. No. 13/538,290, filed Jun. 29, 2012, Kottomtharayil et al.
Supplementary European Search Report, European Patent Application No. 02747883, Sep. 15, 2006; 2 pages.
U.S. Appl. No. 09/607,977, filed Jul. 5, 2000, Crescenti, et al.
U.S. Appl. No. 11/356,467, filed Feb. 15, 2006, Crescenti, et al.
U.S. Appl. No. 13/038,614, filed Sep. 26, 2013, Prahlad, et al.
U.S. Appl. No. 13/787,583, filed Mar. 6, 2013, Kavuri, et al.
U.S. Appl. No. 13/961,265, filed Aug. 7, 2013, Crescenti, et al.
Hsiao, et al., “Using a Multiple Storage Quad Tree on a Hierarchal VLSI Compaction Scheme”, IEEE, 1990, pp. 1-15.
Microsoft Press Computer Dictionary Third Edition, “Data Compression,” Microsoft Press, 1997, p. 130.
Pitoura et al., “Locating Objects in Mobile Computing”, IEEE Transactions on Knowledge and Data Engineering, vol. 13, No. 4, Jul.-Aug. 2001, pp. 571-592.
Rowe et al., “Indexes for User Access to Large Video Databases”, Storage and Retrieval for Image and Video Databases II, IS, & T/SPIE Symp. On Elec. Imaging Sci. & Tech., Feb. 1994, pp. 1-12.
Veeravalli, B., “Network Caching Strategies for a Shared Data Distribution for a Predefined Service Demand Sequence,” IEEE Transactions on Knowledge and Data Engineering, vol. 15, No. 6, Nov.-Dec. 2003, pp. 1487-1497.
Swift et al., “Improving the Reliability of Commodity Operating Systems” ACM 2003.
Office Action in European Application No. 02747883.3 dated Jul. 7, 2014.
Related Publications (1)
Number Date Country
20130254503 A1 Sep 2013 US
Provisional Applications (1)
Number Date Country
60482305 Jun 2003 US
Continuations (4)
Number Date Country
Parent 13356471 Jan 2012 US
Child 13787583 US
Parent 12820533 Jun 2010 US
Child 13356471 US
Parent 12271677 Nov 2008 US
Child 12820533 US
Parent 10877831 Jun 2004 US
Child 12271677 US