(12) United States Patent (10) Patent No.: US 7.634,497 B2 Passerini Et Al
Total Page:16
File Type:pdf, Size:1020Kb
USOO7634497B2 (12) United States Patent (10) Patent No.: US 7.634,497 B2 Passerini et al. (45) Date of Patent: Dec. 15, 2009 (54) TECHNIQUE FOR IMPROVING (58) Field of Classification Search ..................... 707/1, SCALABILITY AND PORTABILITY OFA 707/3,100, 102, 200; 711/149, 161, 162: STORAGE MANAGEMENT SYSTEM 714/5, 42, 54,769, 805 See application file for complete search history. (75) Inventors: Ronald Peter Passerini, Somerville, (56) References Cited MA (US); Robert Warren Perry, Leominster, MA (US); Christopher U.S. PATENT DOCUMENTS Angelo Rocca, Burlington, MA (US); 5.974.409 A * 10/1999 Sanu et al. ..................... 707/3 Michael Daniel Anthony, Wilmington, 2005/0066222 A1 3, 2005 Rowan et al. MA (US) 2005/0066225 A1* 3, 2005 Rowan et al. - - - - - - - - - - - - - - - - - - 714/5 2005. O193031 A1 9/2005 Midgley et al. OTHER PUBLICATIONS (73) Assignee: Symantec Corporation, Cupertino, CA (US) International Search Report mailed Mar. 6, 2008. * cited by examiner (*) Notice: Subject to any disclaimer, the term of this Primary Examiner Fred I Ehichioya patent is extended or adjusted under 35 (74) Attorney, Agent, or Firm Hunton & Williams LLP U.S.C. 154(b) by 290 days. (57) ABSTRACT (21) Appl. No.: 11/549,416 A technique for improving scalability and portability of a storage management system is disclosed. In one particular (22) Filed: Oct. 13, 2006 exemplary embodiment, the technique may be realized as a storage management system operatively coupled to a storage (65) Prior Publication Data system. The storage management system may comprise a US 2007/OO88768 A1 Apr. 19, 2007 plurality of processor modules, wherein each processor mod ule is capable of intercepting write commands directed to the Related U.S. Application Data storage system, backing up data associated with the write (60) Provisional application No. 60/726,186, filed on Oct. commands, and generating metadata having timestamps for 14, 2005, provisional application No. 60/726,187, the backup data. The storage management system may also filed on Oct. 14, 2005, provisional application No. comprise one or more indexing modules that create one or 60/726,192, filed on Oct. 14, 2005, provisional appli more indexing tables for the backup databased on the meta cation No. 60/726,193, filed on Oct. 14, 2005. data, wherein the one or more indexing modules are in com munication with the processor modules and the storage sys (51) Int. C. tem. G06F 7700 (2006.01) (52) U.S. Cl. ........................ 707/102; 707/200; 711/162 13 Claims, 9 Drawing Sheets Current Store Tire Store Storage Management System 106 Storage System 104 U.S. Patent Dec. 15, 2009 Sheet 1 of 9 US 7.634,497 B2 |eun61– U.S. Patent Dec. 15, 2009 Sheet 2 of 9 US 7.634,497 B2 U.S. Patent Dec. 15, 2009 Sheet 3 of 9 U.S. Patent Dec. 15, 2009 Sheet 4 of 9 US 7.634,497 B2 67 U.S. Patent Dec. 15, 2009 Sheet 5 Of 9 US 7.634,497 B2 809(34) 009?p??T?JST 909 U.S. Patent US 7.634,497 B2 9eun61– IdV6u?Xepul-CIS-1 U.S. Patent Dec. 15 , 2009 Sheet 7 Of 9 US 7.634,497 B2 gE Interface 2 /eun61 9 oeueufs U.S. Patent Dec. 15, 2009 Sheet 8 of 9 US 7.634,497 B2 5705s??xouºpuesque6w/ U.S. Patent Dec. 15, 2009 Sheet 9 of 9 US 7.634,497 B2 |------###|--6eun61– @======= US 7,634,497 B2 1. 2 TECHNIQUE FOR IMPROVING storage system 104. The content of the time store 110 may be SCALABILITY AND PORTABILITY OFA indexed, for example, based on time and/or storage address to STORAGE MANAGEMENT SYSTEM facilitate efficient access to the backup data. CROSS-REFERENCE TO RELATED With a current copy of the digital content of the storage APPLICATIONS system 104 in the current store 108 and the historical records in the time store 110, the storage management system 106 This patent application claims priority to U.S. Provisional adds a new dimension, i.e., time, to the storage system 104. Patent Application Nos. 60/726,186, 60/726,187, 60/726, Assuming the storage management system 106 has been 192, and 60/726,193, all of which are filed on Oct. 14, 2005. 10 operatively coupled to the storage system 104 since a past Each of these provisional applications is hereby incorporated time, the storage management system 106 may quickly and by reference herein in its entirety. accurately restore any addressable content in the storage sys This patent application is related to U.S. patent application tem 104 to any point in time between the past time and a Ser. No. 10/924,652, filed Aug. 24, 2004, which is a continu present time. ation-in-part of U.S. patent application Ser. No. 10/668,833, 15 filed Sep. 23, 2003, each of which is hereby incorporated by There are a wide variety of implementation options for the reference herein in its entirety. above-described CDP method. FIG. 2 shows one exemplary This patent application is also related to three co-pending implementation whereina storage management system 206 is patent applications, respectively entitled “Techniques for operatively coupled to both a host 202 and a storage system Time-Dependent Storage Management with a Portable 204. The storage management system 206 may or may not be Application Programming Interface.” “Technique for positioned in a critical data path 20 between the host 202 and Remapping Data in a Storage Management System, and the storage system 204. If it is not in the critical data path 20, “Technique for Timeline Compression in a Data Store.” filed the storage management system 206 may be switched into a concurrently herewith, each of which is incorporated herein “capture mode” whenever it is desirable for it to intercept in its entirety. 25 communications between the host 202 and the storage system FIELD OF THE DISCLOSURE 204. The storage management system 206 is typically imple mented with one or more processor modules 208, wherein The present disclosure relates generally to data storage each processor module 208 performs a series of operations and, more particularly, to a technique for improving Scalabil 30 Such as, for example, data interception, data replication, ity and portability of a storage management system. record creation, and metadata indexing. FIG. 3 shows an exemplary implementation of a scalable BACKGROUND OF THE DISCLOSURE storage management system 300. The storage management In related U.S. patent application Ser. No. 10/924,652 and 35 system 300 may comprise a plurality of processor modules U.S. patent application Ser. No. 10/668,833, a time-depen 302 that are interconnected via an internal network (or back dent data storage and recovery technique is disclosed. plane)30. Each processor module 302 may comprise a central Embodiments of Such a technique provide a solution for processing unit (CPU) 304 that is in communication with a continuous data protection (CDP) wherein write commands target interface 306, a read-only memory (ROM) 308, a directed to a storage system (or data store) are intercepted by 40 memory 310, an initiator interface 312, and an internal net a storage management system having a current store and a work interface 314. The CPU 304 may be implemented in one time store. or more integrated circuits, and can include other"glue” logic FIG. 1 shows an exemplary embodiment of a CDP system (not shown) for interfacing with other integrated circuits, 100. A storage management system 106 may intercept write Such as bus interfaces, clocks, and communications inter commands that are issued by a host 102 and directed to a 45 storage system 104. In the storage management system 106, a faces. The CPU 304 may implement software that is provided current store 108 may maintain or have access to a current (or in the ROM 308 and also software in the memory 310, which mirror) copy of the digital content of the storage system 104. Software can be accessed, for example, over the internal net A time store 110 may record information associated with work interface 314. The internal network interface 314 may each intercepted write command, such as new data in the 50 connect the processor module 302 to the internal network 30, write command's payload and/or old data to be overwritten in such that the processor module 302 may communicate with the current store in response to the write command. Recorda other processor modules. In one implementation, one or more tion of the new or old data in response to a write command sets of processor modules 302 are rack mounted within a may be referred to as a copy-on-write (COW) operation, and storage management system, and the internal network 30 also the new or old data recorded may be referred to as COW data. 55 connects each rack to the other racks within the storage man The time store 110 may also record other information (i.e., agement system. This distributed processing creates a system metadata) associated with an intercepted write command and/ whose size (e.g., memory capacity, processing speed, etc.) or the corresponding COW operation, such as, for example, a timestamp, an original location in the current store where the may be scaled up or down to fit the desired capacity. old data are overwritten, and a destination location in the time 60 However, the above-described modularization of a storage store to which the COW data are copied. Each COW opera management system is only a first step towards Scalability. A tion typically backs up one or more blocks of COW data, number of limitations still restrict the environments in which thereby creating one set of COW data and corresponding the storage management system may be deployed.