US 20140181442A1
(19) United States
(12) Patent Application Publication (10) Pub. No.: US 2014/0181442 A1
Kottomtharayil et al.
(54)
(43) Pub. Date:
REPORTING USING DATA OBTAINED
DURING BACKUP OF PRIMARY STORAGE
Jun. 26, 2014
Publication Classi?cation
(51)
(71) Applicant: CommVault Systems, Inc., Oceanport,
Int. Cl.
G06F 11/14
NJ (US)
(2006.01)
(52) US. Cl.
CPC ................................ .. G06F11/1435 (2013.01)
(72)
InventorSI Rajiv Kottomtharayil, Mar1b0r0,NJ
USPC ........................................................ .. 711/162
(US); Paramasivam Kumarasamy,
Morganv?le, NJ (US)
(21)
(22)
Appl' N05 13/924,217
_
_
Flled'
Jun“ 21’ 2013
(60)
. .
Related U's' Apphcatlon Data
Provisional application No. 61/740,774, ?led on Dec.
(57)
ABSTRACT
A data storage system can scan one or more information
stores of primary storage and analyze the metadata of ?les
stored in the one or more information stores of primary stor
age to identify multiple, possibly relevant, secondary copy
operations that can be performed on the ?les. The storage
system can also identify primary storage usage information of
21, 2012, provisional application No. 61/759,291,
each ?le during the scan and use that information to generate
?led on Jan. 31, 2013.
reports regarding the usage of the primary storage.
100\
104
102
CLIENT COMPUTING
PRIMARY
DEVICE(S)
STORAGE
110
DEVICE(S)
\ APPLICATION(S) '
PRIMARY
DATA
117
112
/
PmMARY
STORAGE
SUBSYSTEM
SECONDARY
STORAGE
SUBSYSTEM
11s
M4
108
106
\\
SECONDARY
SETSQRGEY
STORAGECOMPUHNG
DEWCE§)
DEWCE?)
H6
SECONDARY
OOPES
Patent Application Publication
Jun. 26, 2014 Sheet 1 0f 13
US 2014/0181442 A1
100 \
104
102 \
CLIENT COMPUTING
110
DEVICE(S)
STORAGE
_
\ APPLICATION(S)
117
PRIMARY
STORAGE
PRIMARY
DEVICE(S)
PRIMARY
DATA
112
114
S!B_5_Y§IEM ____________________________________________ _ _
SECONDARY
STORAGE
SUBSYSTEM
118
108
106
\
E
NDARY
SECONDARY
SS$8WE
STORAGE COMPUTING
DEVICE(S)
DEWCHS)
116
SECONDARY
COPES
FIG. 1A
Patent Application Publication
Jun. 26, 2014 Sheet 2 0f 13
' HT 71>?
128
Meta1
‘3
PRIMARY
Meta2
III!
MetaS
‘ Mega
US 2014/0181442 A1
B77
Meta4 M91615
132
w Meta9
117
STORAGE _//
_
iUB?S@
_
_
_
_
SECONDARY
STORAGE
SUBSYSTEMmS
134A
1330' \
Wk
\
1345
134C
"UL—@315
1335‘\?
\?
MetaZ
Meta10
Meta1
Meta5
MetaB
FIG. 18 V
Patent Application Publication
Jun. 26, 2014 Sheet 4 0f 13
US 2014/0181442 A1
104
12
0\
CLIENT COMPUTING
110
CLIENT COMPUTING
110
DEVICE(S) 142\
DEVICE(S) 142\
APPLICATION(S)| AGDEAQTTIES)
APPLICATION(S)| AGDE’RIT IES)
140
STORAGE
MANAGER
105
k
SECONDARY STORAGE
COMPUTING DEVICE
152
[144
@ MEDIA
106
SECONDARY STORAGE
COMPUTING DEVICE
5
y é12
FIG. 1D
H44 106
MEDIA
SECONDARY STORAGE
COMPUTING DEVICE
152
[144
MEDIA
AGENT
Patent Application Publication
Jun. 26, 2014 Sheet 5 0f 13
US 2014/0181442 A1
K160 BACKUP COPY
FS
EMAIL
\' SUBCLIENT
148A
\166
\
162
STORAGE
DISK
SUBCLIENT LIBRARY
\168
MM
108A
3ODAYS’HOURLY
14A
DISASTERRECOVERYCOPY
\
FS
POLICYA
EMAIL
SUBCLIENT
\166
164
TAPE
SUBCLIENT LIBRARY
\168
MM
“DAYS/ONLY
1085 \145
COMPLIANCECOPY
\
EMA'L
SUB
TAPE
NT
168
MA2
LIBRARY
10YEARSIQMARTERLY
1085 \1448
SUMMENTS
102
\
104
CLIENT COMPUTING
142A\
1428
RETENTION/SCHEDULING
DEVICE
xI
@
FSDA
112A
<
FSSUBCLIENT
1125
;|' EMAILDA 5 ®
117
EMAILSUBCLIENT
PRMAgY
STORAGE
SUBSYSTEM
@
@
SECONDARY
STORAGE
MA 1 152
-
®
108A
DISK LIBRARY
_______ __
:BACKUPCOPYI 116A
-|NDEX
SUBSYETEM
11s
EMAIL
i SUBCLIENT
i
l
153
I—
_
_
_
_
_
_
_
_
_
_
©
_
_
_
_
_
_
_
:_§ILB_@LENI-E
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_-i
<3 MB:
M“ 152
-
JLPELERAEY. / l
Q)
l' DISASTER ":116B :
INDEX \4I REC1>E\/|\EEIIL1C1>E>Y+
SMBCMEMT :
153
Q)
iI
i T I
i
,-'-------------111160
I
It SUBCLIENT :
AI COMPLIANCE L/
I
I
I
COPY
I
I
I
EMAIL
l
l
I
SUBCUENT
I
w
:
I
________________________________________|
Patent Application Publication
Jun. 26, 2014 Sheet 7 0f 13
US 2014/0181442 A1
182
V_001
184
_>
Chunk_001
180
Metadata file
—>
186
Non-SI data
Metadata index ?le
—>
188
Index to metadata ?le
Container ?le 001
—>
B1
B2
B3
190
- . .
Bn
Container ?le 002
—>
B1
B2
B3
191
- . .
Bn
+
Container index ?le
001_B1 001_BZ
—>
O
1
I
o
192
002_B1 002_Bn
I
1
0
185
_>
Chunk_002
Metadata ?le 187
Non-SI
—>
data
.
.
Link
Non-SI
Link
data
Metadata index ?le
—>
189
Index to metadata ?le
—>
B1
B2
_’
001 B1
1—
Container ?le 001
193
B3
Bn
B4
B5
---
Container index file
194
001 B2
001 Bn
0—
' ' '
1'
FIG. 1H
Patent Application Publication
Jun. 26, 2014 Sheet 8 0f 13
US 2014/0181442 A1
Patent Application Publication
Jun. 26, 2014 Sheet 9 0f 13
US 2014/0181442 A1
300
302
TRACK METADATA DURING A BACKUP
OPERATION
304
IDENTIFY FILES FOR ARCHIVE BASED ON
I
\/\
THE METADATA TRACKED DURING THE
BACKUP OPERATION
I
306
IDENTIFY PRIMARY STORAGE USAGE DATA
\A USING THE METADATA TRACKED DURING
THE BACKUP OPERATION
|
PERFORM ARCHIVE OPERATION ON THE
I
FILES IDENTIFIED FOR ARCHIVE
|
|
|
| _ _ _ _ _ _ _ _ _ _
_ _ _ __l _ _ _ _ _ _ _ _ _ _ _ _ _ __l
318/JGENERATE REPORT BASED ON USAGE DATA:
I
\_
OF PRIMARY STORAGE
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
FIG. 3
_
_
_
_
I
_
_
_
_
_
__J
Patent Application Publication
Jun. 26, 2014 Sheet 10 0f 13
US 2014/0181442 A1
400
402
\/“
ANALYZE METADATA OF FILES
I
404
IDENTIFY FILES FOR A FIRST SECONDARY
\f‘
COPY OPERATION (E.G., BACKUP)
USING THE METADATA
I
406 IDENTIFY FILES FOR A SECOND SECONDARY
\A COPY OPERATION (E.G., ARCHIVE) USING
THE METADATA
I
408
DETERMINE USAGE DATA OF PRIMARY
STORAGE USING THE METADATA
'_ _ _I5E_RF_O_R_M FFR‘ST‘SE‘C‘O‘N‘D‘ARY‘COPY _ _ _
\___\: OPERATION (E.G., BACKUP) ON THE FILES
l
IDENTIFIED FOR THE FIRST SECONDARY
l
_
COPY OPERATION
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
__J
T _I5ERF_O_R_M SECOND SECONDARY—COPY— _ _
412
' OPERATION (E.G., ARCHIVE) ON THE FILES
IDENTIFIED FOR THE SECOND SECONDARY
________ __C_QP_Y_QPEFSAT_'9N_________
| T
T T T
T
T T T
T
T
T T
T TTl T T T
T
T T T
T T T T
T T TTI
Mfr/\I'GENERATE REPORT BASED ON USAGE DATA:
I
OF PRIMARY STORAGE
I
Patent Application Publication
Jun. 26, 2014 Sheet 11 0f 13
US 2014/0181442 A1
500
502
\/*
ANALYZE FILES IN PRIMARY STORAGE
:FOR EACH FILE
|
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
i
l
:
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
EETS CRITERIA FO
FIRST SECONDARY COPY
OPERATION (E.G.,
BACKUP)?
506
V“ IDENTIFY FILE FOR
NO
FIRST SECONDARY
COPY OPERATION
(E.G., BACKUP)
METADATA
MEETS CRITERIA FOR
SECOND SECONDARY
510
OPY OPERATION (E.G.
I
ARCHIVE)?
IDENTIFY FILE FOR
SECOND SECONDARY
COPY OPERATION
(E.G., ARCHIVE)
NO
512\A
V
I
DETERMINE PRIMARY STORAGE
USAGE DATA OF FILE
USING THE METADATA
Patent Application Publication
Jun. 26, 2014 Sheet 12 0f 13
US 2014/0181442 A1
600
6(12”ANALYZE METADATA OF FILES IN A PRIMARY
STORAGE
I
604
IDENTIFY FILES THAT HAVE BEEN MODIFIED
V“
SINCE A PREVIOUS BACKUP DATE USING
THE METADATA
I
606
IDENTIFY FILES THAT WERE LAST MODIFIED
\/“ PRIOR TO A SYSTEM ARCHIVAL DATE USING
THE METADATA
I
608
DETERMINE USAGE DATA OF PRIMARY
M
STORAGE
USING THE METADATA
_____________
610 I
v1
I
PERFORM BACKUP OPERATIONS ON THE
FILES THAT WERE MODIFIED SINCE A
'
PREVIOUS BACKUP DATE
I PERFORM ARCHIVE OPERATIONS ON THE I
\/'1' FILES THAT WERE LAST MODIFIED PRIOR TO|
'
A SYSTEM ARCHIVAL DATE
|
I _____________ __1 _____________ __ l
6uGENERATE REPORT BASED ON USAGE DATA:
I
OF THE PR||v|ARY DATA STORE
:
Patent Application Publication
\q
703/
Jun. 26, 2014 Sheet 13 0f 13
US 2014/0181442 A1
ANALYZE FILES IN PRIMARY STORAGE
YESl
NO
MODIFIED PRIOR
TO SYSTEM ARCHIVE
{YES
I
IDENTIFY FILE FOR
\?
BACKUP
OPERATION
,_______
_______
IDENTIFY FILE FOR
4 : PERFORM BACKUP I
ARCHIVE
OPERATION
V“, IDENTIFIED FILE I
I
_____ “I _____ __
OPERATION ON
NO
I
I I
I
i
l
OPERATION ON L» 716
IDENTIFIED FILE l
____________ __
712
R
.
DETERMINE PRIMARY STORAGE
I
I
USAGE DATA OF FILE USING THE
METADATA
I
718/4 PERFORIvI BACKUP OPERATION ON
FILES IDENTIFIED FOR BACKUP
I
728/4 PERFORM ARCHIVE OPERATION ON
I
FILES IDENTIFIED FOR ARCHIVE
I
I
7%2/JGENERATE REPORT BASED ON USAGE DATA}
I
OF THE PRIMARY STORAGE
I
I
US 2014/0181442 A1
REPORTING USING DATA OBTAINED
DURING BACKUP OF PRIMARY STORAGE
CROSS-REFERENCE TO RELATED
APPLICATIONS
[0001] The present application claims priority bene?t to
US. Provisional Application No. 61/740,774 entitled IDEN
TIFYING FILES FOR MULTIPLE SECONDARY COPY
OPERATIONS DURING A SCAN OF PRIMARY STOR
AGE, ?led Dec. 21, 2012 and US. Provisional Application
No. 61/759,291 entitled IDENTIFYING FILES FOR MUL
TIPLE SECONDARY COPY OPERATIONS DURING A
SCAN OF PRIMARY STORAGE, ?led Jan. 31, 2013 and,
each of which is hereby incorporated by reference herein in its
entirety.
[0002] The present application is being ?led concurrently
with US. application Ser. No. TBD, entitled IDENTIFYING
FILES FOR MULTIPLE SECONDARY COPY OPERA
TIONS USING DATA OBTAINED DURING BACKUP OF
PRIMARY STORAGE, ?led Jun. 21, 2013; and US. appli
cation Ser. No. TBD, entitled DATA ARCHIVE USING
DATA OBTAINED DURING BACKUP OF PRIMARY
Jun. 26, 2014
to identify the ?les that should be backed up according to a
backup storage policy. Following the ?rst scan, the storage
management system can perform a backup of the identi?ed
?les. At a later point in time, the data in the primary storage
device is then scanned a second time to identify any ?les that
should be archived. Following the second scan, the storage
management system archives the identi?ed ?les. The primary
storage device can be scanned a third time to identify usage
information or other information not collected during the
backup or the archive scans, such as the amount of used
storage space vs. available storage space, the number of
mount points, the number of volumes, types of disks used for
storage, disk trending, fault trending, etc. Following the third
scan, the storage management system can generate various
reports based on the usage information, such as the rate at
which storage space is being used, etc.
[0009]
The backup, archive, and reporting operations can
be very time consuming, as each operation scans the storage
system for different information. Further, the amount of time
needed to complete the various scans and operations can
exceed the time allocated by a system administrator.
SUMMARY
STORAGE, ?led Jun. 21, 2013; each of which is hereby
incorporated herein by reference.
BACKGROUND
[0003]
Businesses worldwide recognize the commercial
[0010]
A data storage system according to certain embodi
ments, during a single scanning session, scans one or more
information stores of primary storage and analyzes the meta
data associated with ?les located in the one or more informa
value of their data and seek reliable, cost-effective ways to
protect the information stored on their computer networks
tion stores of primary storage to identify multiple, secondary
while minimizing impact on productivity. Protecting infor
instance, the system may scan primary storage to identify ?les
to perform a backup copy operation on and, during the same
scanning session, identify ?les to perform an archive opera
mation is often part of a routine process that is performed
within an organization.
[0004]
A company might back up critical computing sys
tems such as databases, ?le servers, web servers, and so on as
part of a daily, weekly, or monthly maintenance schedule. The
company may similarly protect computing systems used by
each of its employees, such as those used by an accounting
department, marketing department, engineering department,
and so forth.
[0005] Given the rapidly expanding volume of data under
management, companies also continue to seek innovative
techniques for managing data growth, in addition to protect
ing data. For instance, companies often implement migration
techniques for moving data to lower cost storage over time
and data reduction techniques for reducing redundant data,
pruning lower priority data, etc.
[0006] Enterprises also increasingly view their stored data
copy operations that can be performed on the ?les. For
tion on. Files can be scanned in a variety of manners. In some
embodiments, the storage system scans a ?le to identify one
or more, secondary copy operations that can be performed on
that ?le before analyzing another ?le. In other cases, one or
more of the ?les are scanned in parallel. The storage system
can also identify primary storage usage information of each
?le during the scan session to generate reports regarding the
usage of the primary storage. The reports may include infor
mation not typically obtained during a scan associated with a
backup or archive operation, for example. Consolidating
scanning and/or associated secondary copy operations in this
manner signi?cantly reduces scanning time, increasing sys
tem performance.
BRIEF DESCRIPTION OF THE DRAWINGS
as a valuable asset. Along these lines, customers are looking
[0011]
for solutions that not only protect and manage, but also lever
plary information management system.
age their data. For instance, solutions providing data analysis
capabilities, improved data presentation and access features,
and the like, are in increasing demand.
[0007] In addition to backing up ?les, a company might
also archive ?les to comply with reporting and legal require
ments. IT departments within a company may also generate
reports of storage systems to identify usage and trending
details. Such reports can be used to determine if additional
storage is needed, etc.
[0008] Often data in a primary storage device is scanned
multiple times by a storage management system to identify
different pieces of information regarding the usage of the
primary storage device and the ?les stored thereon. For
example, a primary storage device is often scanned a ?rst time
[0012]
FIG. 1A is a block diagram illustrating an exem
FIG. 1B is a detailed view of a primary storage
device, a secondary storage device, and some examples of
primary data and secondary copy data.
[0013] FIG. 1C is a block diagram of an exemplary infor
mation management system including a storage manager, one
or more data agents, and one or more media agents.
[0014]
FIG. 1D is a block diagram illustrating a scalable
information management system.
[0015] FIG. 1E illustrates certain secondary copy opera
tions according to an exemplary storage policy.
[0016] FIGS. 1F-1H are block diagrams illustrating suit
able data structures that may be employed by the information
management system.
US 2014/0181442 A1
[0017] FIG. 2 is a block diagram illustrative of an embodi
ment of various components of an information management
Jun. 26, 2014
agement system can copy the ?le from either the one or more
system.
information stores of primary storage or secondary storage to
an archive storage device and replace the ?le in the primary
[0018] FIGS. 3-7 are ?ow diagram illustrative of embodi
ments of routines implemented by the information manage
ment system to identify ?les in primary storage for secondary
retrieve the ?le from secondary storage or the archive storage
device, before analyzing another ?le. In other cases, analysis
copy operations.
storage with a stub that includes information on how to
and/or storage operations are performed on one or more ?les
in parallel.
DETAILED DESCRIPTION
[0019] Generally described, the present disclosure is
[0023]
In certain cases, the storage management system
can wait until all of the ?les of the primary storage have been
directed to a system, method, and computer readable non
analyzed before beginning the secondary copy operations.
transitory storage medium for a storage management system.
Speci?cally, embodiments described herein include systems
and methods for analyzing ?les in a primary storage device
For example, once the storage management system has
once and performing one of a variety of storage operations on
archive, and/or the primary storage usage information, the
storage management device can begin the backup operation
the ?les based on the single analysis.
[0020] In accordance with certain aspects of the disclosure,
the storage management system can scan one or more infor
mation stores of primary storage once and analyze the ?les
stored thereon to determine which ?les should be part of
different secondary copy operations, such as a backup opera
tion or archive operation. During the scan, the storage man
agement system can also retrieve storage information associ
ated with the ?les, which can be used to identify usage
information of the primary storage. In some embodiments,
scanned the one or more information stores of the primary
storage and identi?ed the ?les for backup, the ?les for
on the ?les identi?ed for backup, the archive operations for
the ?les identi?ed for archive, and/ or generate reports based
on the usage information. In other cases, the scanning/analy
sis at least partially overlaps in time with the storage opera
tion(s) and/or report generation.
[0024] In addition, the storage management system can
compile the usage information that was collected during the
scan for each individual ?le while concurrently scanning the
?le currently being analyzed should be part of a backup
?le for secondary copy operations. The compiled usage infor
mation can be used to generate reports regarding the primary
storage. As mentioned previously, the reports can include
usage information of the primary storage, such as the amount
of used storage space vs. available storage space in the pri
mary storage, the number of mount points of the primary
storage, the number of volumes in the primary storage, types
of disks used for storage in the primary storage, usage trends,
such as the rate at which data is being used, fault trending, etc.
Collecting this information during the scan associated with
operation or an archive operation. In addition, the storage
management system can retrieve storage information of the
the secondary copy operation (e.g., backup or archive) results
in signi?cant time savings.
?le currently being analyzed before analyzing another ?le, or
[0025] Further examples of systems and methods for ana
lyzing primary storage and identifying ?les for different sec
the storage management system analyzes each ?le (e.g.,
metadata associated with the ?le) individually and collects
information associated with the ?le relating to each of the
different secondary copy operations. The ?les can be ana
lyzed serially, such that analysis for one ?le is completed
before analyzing another ?le, or one or more of the ?les can be
analyzed in parallel (e.g., via different threads). For example,
the storage management system can determine whether the
in parallel with analysis of one or more other ?les, depending
on the embodiment. The storage information can include, but
is not limited to, the amount of data used to store the ?le, the
volume where the ?le is stored, the type of disk used to store
the ?le, any faults relevant to the ?le, etc.
[0021] In addition, as part of the scan, the storage manage
ment system can perform the relevant system operations and/
or secondary copy operations on the ?les. For example, ?les
identi?ed for a backup operation can be backed up, ?les
identi?ed for archive can be archived, and the usage informa
tion of each ?led can be used to generate reports. As part of the
backup operation, all of the ?les can be backed up, a subset of
the ?les can be backed up (e.g., ?les changed since a last
backup), and/or changes to the ?les that have occurred since
a previous backup can be backed up. As part of the archive
operation, the ?les identi?ed for archive can be removed from
the one or more information stores and, depending on the type
of archive operation, can also be replaced with a stub that
includes information as to where the ?le can be found in a
secondary storage and/or in an archive storage device.
[0022] In some cases, the storage management system can
perform the storage operations on the ?le currently being
analyzed before proceeding to another ?le. For example, if
the ?le currently being analyzed is to be part of a backup, the
storage management system can begin the backup operation
ondary copy operations during a scan are shown and
described below with respect to FIGS. 2-7, for example. By
analyzing each ?le once to identify multiple, secondary copy
operations and information during one scan of the primary
storage, the storage management system can reduce the time
required to perform the secondary copy operations and the
down time of the primary storage device.
Information Management System Overview
[0026] With the increasing importance of protecting and
leveraging data, organizations simply cannot afford to take
the risk of losing critical data. Moreover, runaway data
growth and other modern realities make protecting and man
aging data an increasingly dif?cult task. There is therefore a
need for ef?cient, powerful, and user-friendly solutions for
protecting and managing data.
[0027] Depending on the size of the organization, there are
typically many data production sources which are under the
purview of tens, hundreds, or even thousands of employees or
other individuals. In the past, individual employees were
sometimes responsible for managing and protecting their
data. A patchwork of hardware and software point solutions
have been applied in other cases. These solutions were often
on the ?le before analyzing another ?le. Similarly, if the ?le
provided by different vendors and had limited or no interop
currently being analyzed is to be archived, the storage man
erability.
US 2014/0181442 A1
Jun. 26, 2014
[0028] Certain embodiments described herein provide sys
tems and methods capable of addressing these and other
[0046]
shortcomings of prior approaches by implementing uni?ed,
DATA MANAGEMENT”;
[0047] US. Pat. Pub. No. 2012/0150826, entitled “DIS
TRIBUTED DEDUPLICATED STORAGE SYSTEM”;
[0048] US. Pat. Pub. No. 2012/0150818, entitled “CLI
organization-wide information management. FIG. 1A shows
one such information management system 100, which gener
ally includes combinations of hardware and software con?g
ured to protect and manage data and metadata generated and
used by the various computing devices in the information
management system 100.
[0029]
The organization which employs the information
management system 100 may be a corporation or other busi
ness entity, non-pro?t organization, educational institution,
household, governmental agency, or the like.
[0030] Generally, the systems and associated components
described herein may be compatible with and/or provide
some or all of the functionality of the systems and corre
sponding components described in one or more of the follow
ing US. patents and patent application publications assigned
to CommVault Systems, Inc., each of which is hereby incor
porated in its entirety by reference herein:
[0031]
US. Pat. No. 8,285,681, entitled “DATA OBJECT
US. Pat. Pub. No. 2009/0329534, entitled “APPLI
CATION-AWARE AND REMOTE SINGLE INSTANCE
ENT-SIDE REPOSITORY IN A NETWORKED DEDU
PLICATED STORAGE SYSTEM”;
[0049] US. Pat. No. 8,170,995, entitled “METHOD AND
SYSTEM FOR OFFLINE INDEXING OF CONTENT
AND CLASSIFYING STORED DATA”; and
[0050] US. Pat. No. 8,156,086, entitled “SYSTEMS AND
METHODS FOR STORED DATA VERIFICATION”.
[0051] The information management system 100 can
include a variety of different computing devices. For instance,
as will be described in greater detail herein, the information
management system 100 can include one or more client com
puting devices 102 and secondary storage computing devices
1 06.
[0052]
Computing devices can include, without limitation,
STORE AND SERVER FOR A CLOUD STORAGE
one or more: workstations, personal computers, desktop com
ENVIRONMENT, INCLUDING DATA DEDUPLICA
puters, or other types of generally ?xed computing systems
TION AND DATA MANAGEMENT ACROSS MUL
such as mainframe computers and minicomputers.
[0053] Other computing devices can include mobile or por
TIPLE CLOUD STORAGE SITES”;
[0032] US. Pat. No. 8,307,177, entitled “SYSTEMS A
METHODS FOR MANAGEMENT OF VIRTUALIZA
TION DATA”;
[0033] US. Pat. No. 7,035,880, entitled “MODULAR
BACKUP AND RETRIEVAL SYSTEM USED IN CON
JUNCTION WITH A STORAGE AREA NETWORK”;
[0034]
US. Pat. No. 7,343,453, entitled “HIERARCHI
CAL SYSTEMS AND METHODS FOR PROVIDINGA
UNIFIED VIEW OF STORAGE INFORMATION”;
[0035] US. Pat. No. 7,395,282, entitled “HIERARCHI
CAL BACKUP AND RETRIEVAL SYSTEM”;
[0036] US. Pat. No. 7,246,207, entitled “SYSTEM AND
METHOD FOR DYNAMICALLY PERFORMING
STORAGE OPERATIONS IN A COMPUTER NET
METHODS FOR MONITORING APPLICATION DATA
IN A DATA REPLICATION SYSTEM”;
[0040] US. Pat. No. 7,529,782, entitled “SYSTEM AND
METHODS FOR PERFORMING A SNAPSHOT AND
FOR RESTORING DAT ”;
[0041] US. Pat. No. 8,230,195, entitled “SYSTEM AND
METHOD FOR PERFORMING AUXILIARY STOR
AGE OPERATIONS”;
[0042] US. Pat. No. 7,315,923, entitled “SYSTEM AND
METHOD FOR COMBINING DATA STREAMS IN A
STORAGE OPERATION”;
[0043] US. Pat. No. 8,364,652, entitled “CONTENT
ALIGNED, BLOCK-BASED DEDUPLICATION”;
[0044] US. Pat. Pub. No. 2006/0224846, entitled “SYS
AND
computers, personal data assistants, mobile phones (such as
smartphones), and other mobile or portable computing
devices such as embedded computers, set top boxes, vehicle
mounted devices, wearable computers, etc. Computing
devices can include servers, such as mail servers, ?le servers,
database servers, and web servers.
[0054] In some cases, a computing device includes virtual
ized and/or cloud computing resources. For instance, one or
more virtual machines may be provided to the organization by
a third-party cloud service vendor. Or, in some embodiments,
computing devices can include one or more virtual machine
(s) running on a physical virtual machine host operated by the
organization. As one example, the organization may use one
virtual machine as a database server and another virtual or
WORK”;
[0037] US. Pat. No. 7,747,579, entitled “METABASE
FOR FACILITATING DATA CLASSIFICATION”;
[0038] US. Pat. No. 8,229,954, entitled “MANAGING
COPIES OF DATA”;
[0039] US. Pat. No. 7,617,262, entitled “SYSTEM AND
TEM
table computing devices, such as one or more laptops, tablet
METHOD
TO
SUPPORT
INSTANCE STORAGE OPERATIONS”;
[0045] US. Pat. Pub. No. 2010-0299490,
“BLOCK-LEVEL SINGLE INSTANCING”;
physical machine as a mail server. A virtual machine manager
(VMM) (e.g., a Hypervisor) may manage the virtual
machines, and reside and execute on the virtual machine ho st.
Examples of techniques for implementing information man
agement techniques in a cloud computing environment are
described in US. Pat. No. 8,285,681, which is incorporated
by reference herein. Examples of techniques for implement
ing information management techniques in a virtualized com
puting environment are described in US. Pat. No. 8,307,177,
also incorporated by reference herein.
[0055]
The information management system 100 can also
include a variety of storage devices, including primary stor
age devices 104 and secondary storage devices 108, for
example. Storage devices can generally be of any suitable
type including, without limitation, disk drives, hard-disk
arrays, semiconductor memory (e.g., solid state storage
devices), network attached storage (NAS) devices, tape
libraries or other magnetic, non-tape storage devices, optical
media storage devices, combinations of the same, and the
like. In some embodiments, storage devices can form part of
SINGLE
a distributed ?le system. In some cases, storage devices are
entitled
provided in a cloud (e.g., a private cloud or one operated by a
third-party vendor). A storage device in some cases com
prises a disk array or portion thereof.
US 2014/0181442 A1
[0056]
The illustrated information management system
Jun. 26, 2014
sentation applications, browser applications, mobile applica
100 includes one or more client computing device 102 having
at least one application 110 executing thereon, and one or
tions, entertainment applications, and so on.
[0065] The client computing devices 102 can have at least
more primary storage devices 104 storing primary data 112.
The client computing device(s) 102 and the primary storage
one operating system (e.g., Microsoft Windows, Mac OS X,
iOS, IBM z/OS, Linux, other Unix-based operating systems,
devices 104 may generally be referred to in some cases as a
etc.) installed thereon, which may support or host one or more
primary storage subsystem 117.
?le systems and other applications 110.
[0066] As shown, the client computing devices 102 and
other components in the information management system
[0057] Depending on the context, the term “information
management system” can refer to generally all of the illus
trated hardware and software components. Or, in other
instances, the term may refer to only a subset of the illustrated
municationpathways 114. The communication pathways 114
components.
can include one or more networks or other connection types
[0058]
For instance, in some cases, the information man
100 can be connected to one another via one or more com
including as any of following, without limitation: the Internet,
agement system 100 generally refers to a combination of
specialized components used to protect, move, manage,
a wide area network (WAN), a local area network (LAN), a
manipulate, analyze, and/or process data and metadata gen
erated by the client computing devices 102. However, the
Small Computer System Interface (SCSI) connection, a vir
tual private network (VPN), a token ring or TCP/IP based
information management system 100 in some cases does not
network, an intranet network, a point-to-point link, a cellular
network, a wireless data transmission system, a two-way
cable system, an interactive kiosk network, a satellite net
work, a broadband network, a baseband network, a neural
include the underlying components that generate and/ or store
the primary data 112, such as the client computing devices
102 themselves, the applications 110 and operating system
residing on the client computing devices 102, and the primary
Storage Area Network (SAN), a Fibre Channel connection, a
network, other appropriate wired, wireless, or partially wired/
following components and corresponding data structures:
wireless computer or telecommunications networks, combi
nations of the same or the like. The communication pathways
114 in some cases may also include application programming
storage managers, data agents, and media agents. These com
ponents will be described in further detail below.
virtual machine management APIs, and hosted service pro
[0059] Client Computing Devices
vider APIs.
[0060]
Primary Data and Exemplary Primary Storage Devices
storage devices 104. As an example, “information manage
ment system” may sometimes refer to one or more of the
There are typically a variety of sources in an orga
nization that produce data to be protected and managed. As
just one illustrative example, in a corporate environment such
interfaces (APIs) including, e.g., cloud service providerAPIs,
[0061] The client computing devices 102 may include any
of the types of computing devices described above, without
[0067] Primary data 112 according to some embodiments is
production data or other “live” data generated by the operat
ing system and other applications 110 residing on a client
computing device 102. The primary data 112 is generally
stored on the primary storage device(s) 104 and is organized
via a ?le system supported by the client computing device
102. For instance, the client computing device(s) 102 and
corresponding applications 110 may create, access, modify,
limitation, and in some cases the client computing devices
write, delete, and otherwise use primary data 112. In some
102 are associated with one or more users and/or correspond
cases, some or all of the primary data 112 can be stored in
cloud storage resources.
data sources can be employee workstations and company
servers such as a mail server, a web server, or the like. In the
information management system 100, the data generation
sources include the one or more client computing devices
102.
ing user accounts, of employees or other individuals.
[0062]
The information management system 100 generally
addresses & handles the data management and protection
needs for the data generated by the client computing devices
102. However, the use of this term does not imply that the
client computing devices 102 cannot be “servers” in other
[0068] Primary data 112 is generally in the native format of
the source application 110. According to certain aspects, pri
mary data 112 is an initial or ?rst (e.g., created before any
other copies or before at least one other copy) stored copy of
data generated by the source application 110. Primary data
respects. For instance, a particular client computing device
112 in some cases is created substantially directly from data
102 may act as a server with respect to other devices, such as
generated by the corresponding source applications 110.
other client computing devices 102. As just a few examples,
[0069]
the client computing devices 102 can include mail servers, ?le
as a “primary copy” in the sense that it is a discrete set of data.
The primary data 112 may sometimes be referred to
servers, database servers, and web servers.
However, the use of this term does not necessarily imply that
[0063]
the “primary copy” is a copy in the sense that it was copied or
otherwise derived from another stored version.
Each client computing device 102 may have one or
more applications 110 (e. g., software applications) executing
thereon which generate and manipulate the data that is to be
[0070] The primary storage devices 104 storing the primary
protected from loss and managed.
[0064] The applications 110 generally facilitate the opera
tions of an organization (or multiple af?liated organizations),
data 112 may be relatively fast and/or expensive (e.g., a disk
drive, a hard-disk array, solid state memory, etc.). In addition,
primary data 112 may be intended for relatively short term
and can include, without limitation, mail server applications
retention (e.g., several hours, days, or weeks).
(e.g., Microsoft Exchange Server), ?le server applications,
mail client applications (e.g., Microsoft Exchange Client),
database applications (e.g., SQL, Oracle, SAP, Lotus Notes
[0071] According to some embodiments, the client com
puting device 102 can access primary data 112 from the
primary storage device 104 by making conventional ?le sys
Database), word processing applications (e.g., Microsoft
Word), spreadsheet applications, ?nancial applications, pre
tem calls via the operating system. Primary data 112 repre
senting ?les may include structured data (e. g., database ?les),
US 2014/0181442 A1
unstructured data (e.g., documents), and/or semi-structured
data. Some speci?c examples are described below with
respect to FIG. 1B.
[0072] It can be useful in performing certain tasks to orga
nize the primary data 112 into units of different granularities.
In general, primary data 112 can include ?les, directories, ?le
system volumes, data blocks, extents, or any other hierarchies
or organizations of data objects. As used herein, a “data
object” can refer to both (1) any ?le that is currently addres
sable by a ?le system or that was previously addressable by
the ?le system (e.g., an archive ?le) and (2) a subset of such a
?le (e.g., a data block).
[0073] As will be described in further detail, it can also be
useful in performing certain functions of the information
management system 100 to access and modify metadata
within the primary data 112. Metadata generally includes
information about data objects or characteristics associated
with the data objects.
[0074] Metadata can include, without limitation, one or
more of the following: the data owner (e. g., the client or user
that generates the data), the last modi?ed time (e. g., the time
of the most recent modi?cation of the data object), a data
object name (e.g., a ?le name), a data object size (e.g., a
number of bytes of data), information about the content (e.g.,
an indication as to the existence of a particular search term),
to/from information for email (e.g., an email sender, recipi
ent, etc.), creation date, ?le type (e.g., format or application
type), last accessed time, application type (e.g., type of appli
cation that generated the data object), location/network (e.g.,
a current, past or future location of the data object and net
work pathways to/from the data object), frequency of change
(e. g., a period in which the data object is modi?ed), business
unit (e. g., a group or department that generates, manages or is
otherwise associated with the data object), aging information
(e.g., a schedule, such as a time period, in which the data
object is migrated to secondary or long term storage), boot
sectors, partition layouts, ?le location within a ?le folder
directory structure, user permissions, owners, groups, access
Jun. 26, 2014
some other kind of suitable storage device. The primary stor
age devices 104 may have relatively fast I/O times and/or are
relatively expensive in comparison to the secondary storage
devices 108. For example, the information management sys
tem 100 may generally regularly access data and metadata
stored on primary storage devices 104, whereas data and
metadata stored on the secondary storage devices 108 is
accessed relatively less frequently.
[0078] In some cases, each primary storage device 104 is
dedicated to an associated client computing device 102. For
instance, a primary storage device 104 in one embodiment is
a local disk drive of a corresponding client computing device
102. In other cases, one or more primary storage devices 104
can be shared by multiple client computing devices 102, e. g.,
via a network such as in a cloud storage implementation. As
one example, a primary storage device 104 can be a disk array
shared by a group of client computing devices 102, such as
one of the following types of disk arrays: EMC Clariion,
EMC Symmetrix, EMC Celerra, Dell EqualLogic, IBM XIV,
NetApp FAS, HP EVA, and HP 3PAR.
[0079] The information management system 100 may also
include hosted services (not shown), which may be hosted in
some cases by an entity other than the organization that
employs the other components of the information manage
ment system 100. For instance, the hosted services may be
provided by various online service providers to the organiza
tion. Such service providers can provide services including
social networking services, hosted email services, or hosted
productivity applications or other hosted applications).
[0080]
Hosted services may include software-as-a-service
(SaaS), platform-as-a-service (PaaS), application service
providers (ASPs), cloud services, or other mechanisms for
delivering functionality via a network. As it provides services
to users, each hosted service may generate additional data and
metadata under management of the information management
system 100, e.g., as primary data 112. In some cases, the
hosted services may be accessed using one of the applications
control lists [ACLs]), system metadata (e.g., registry infor
110. As an example, a hosted mail service may be accessed
via browser running on a client computing device 102. The
mation), combinations of the same or the other similar infor
hosted services may be implemented in a variety of comput
mation related to the data object.
[0075] In addition to metadata generated by or related to
?le systems and operating systems, some of the applications
1 1 0 and/or other components of the information management
system 100 maintain indices of metadata for data objects,
e.g., metadata associated with individual email messages.
management system 100, where various physical and logical
Thus, each data object may be associated with corresponding
Devices
metadata. The use of metadata to perform classi?cation and
other functions is described in greater detail below.
[0076] Each of the client computing devices 102 are gen
erally associated with and/or in communication with one or
devices 104 may be compromised in some cases, such as
when an employee deliberately or accidentally deletes or
more of the primary storage devices 104 storing correspond
ing primary data 112. A client computing device 102 may be
overwrites primary data 112 during their normal course of
work. Or the primary storage devices 104 can be damaged or
considered to be “associated with” or “in communication
wit ” a primary storage device 104 if it is capable of one or
otherwise corrupted.
[0082] For recovery and/or regulatory compliance pur
more of: routing and/or storing data to the particular primary
poses, it is therefore useful to generate copies of the primary
data 112. Accordingly, the information management system
storage device 104, coordinating the routing and/or storing of
data to the particular primary storage device 104, retrieving
data from the particular primary storage device 104, coordi
nating the retrieval of data from the particular primary storage
device 104, and modifying and/or deleting data retrieved
from the particular primary storage device 104.
[0077] The primary storage devices 104 can include any of
the different types of storage devices described above, or
ing environments. In some cases, they are implemented in an
environment having a similar arrangement to the information
components are distributed over a network.
Secondary Copies and Exemplary Secondary Storage
[0081]
The primary data 112 stored on the primary storage
100 includes one or more secondary storage computing
devices 106 and one or more secondary storage devices 108
con?gured to create and store one or more secondary copies
116 of the primary data 112 and associated metadata. The
secondary storage computing devices 106 and the secondary
storage devices 108 may sometimes be referred to as a sec
ondary storage subsystem 118.
US 2014/0181442 A1
[0083] Creation of secondary copies 116 can help in search
and analysis efforts and meet other information management
goals, such as: restoring data and/or metadata if an original
Jun. 26, 2014
version (e.g., of primary data 112) is lost (e.g., by deletion,
corruption, or disaster); allowing point-in-time recovery;
storage device(s) 104 may comprise a virtual disk created on
a physical storage device. The information management sys
tem 100 may create secondary copies 116 of the ?les or other
data objects in a virtual disk ?le and/or secondary copies 116
of the entire virtual disk ?le itself (e.g., of an entire .vmdk
complying with regulatory data retention and electronic dis
?le).
covery (e-discovery) requirements; reducing utilized storage
capacity; facilitating organization and search of data; improv
ing user access to data ?les across multiple computing
devices and/or hosted services; and implementing data reten
tion policies.
[0084] The client computing devices 102 access or receive
primary data 112 and communicate the data, e.g., over the
communication pathways 114, for storage in the secondary
storage device(s) 108.
[0085]
A secondary copy 116 can comprise a separate
stored copy of application data that is derived from one or
[0090]
Secondary copies 116 may be distinguished from
corresponding primary data 112 in a variety of ways, some of
which will now be described. First, as discussed, secondary
copies 116 can be stored in a different format (e.g., backup,
archive, or other non-native format) than primary data 112.
For this or other reasons, secondary copies 116 may not be
directly useable by the applications 110 of the client comput
ing device 102, e.g., via standard system calls or otherwise
without modi?cation, processing, or other intervention by the
information management system 100.
[0091] Secondary copies 116 are also in some embodi
more earlier created, stored copies (e.g., derived from pri
mary data 112 or another secondary copy 116). Secondary
copies 116 can include point-in-time data, and may be
ments stored on a secondary storage device 108 that is inac
intended for relatively long-term retention (e.g., weeks,
copies 116 may be “o?line copies,” in that they are not readily
available (e. g. not mounted to tape or disk). Of?ine copies can
include copies of data that the information management sys
months or years), before some or all of the data is moved to
other storage or is discarded.
[0086] In some cases, a secondary copy 116 is a copy of
application data created and stored subsequent to at least one
cessible to the applications 110 running on the client comput
ing devices 102 (and/or hosted services). Some secondary
tem 100 can access without human intervention (e.g. tapes
within an automated tape library, but not yet mounted in a
other stored instance (e.g., subsequent to corresponding pri
drive), and copies that the information management system
mary data 112 or to another secondary copy 116), in a differ
ent storage device than at least one previous stored copy,
(e.g. tapes located at an offsite storage site).
and/or remotely from at least one previous stored copy. In
some other cases, secondary copies can be stored in the same
storage device as primary data 112 and/or other previously
100 can access only with at least some human intervention
The Use of Intermediate Devices for Creating Secondary
Copies
stored copies. For example, in one embodiment a disk array
[0092]
capable of performing hardware snapshots stores primary
task. For instance, there can be hundreds or thousands of
Creating secondary copies can be a challenging
data 112 and creates and stores hardware snapshots of the
client computing devices 102 continually generating large
primary data 112 as secondary copies 116. Secondary copies
volumes of primary data 112 to be protected. Also, there can
be signi?cant overhead involved in the creation of secondary
116 may be stored in relatively slow and/or low cost storage
(e. g., magnetic tape). A secondary copy 116 may be stored in
a backup or archive format, or in some other format different
than the native source application format or other primary
data format.
[0087] In some cases, secondary copies 116 are indexed so
users can browse and restore at another point in time. After
copies 116. Moreover, secondary storage devices 108 may be
special purpose components, and interacting with them can
require specialized intelligence.
[0093]
In some cases, the client computing devices 102
interact directly with the secondary storage device 108 to
create the secondary copies 116. However, in view of the
factors described above, this approach can negatively impact
creation of a secondary copy 116 representative of certain
primary data 112, a pointer or other location indicia (e.g., a
the ability of the client computing devices 102 to serve the
stub) may be placed in primary data 112, or be otherwise
applications 110 and produce primary data 112. Further, the
associated with primary data 112 to indicate the current loca
tion on the secondary storage device(s) 108.
client computing devices 102 may not be optimized for inter
action with the secondary storage devices 108.
[0088] Since an instance of a data object or metadata in
primary data 112 may change over time as it is modi?ed by an
agement system 100 includes one or more software and/or
[0094]
Thus, in some embodiments, the information man
application 110 (or hosted service or the operating system),
hardware components which generally act as intermediaries
the information management system 100 may create and
between the client computing devices 102 and the secondary
storage devices 108. In addition to off-loading certain respon
sibilities from the client computing devices 102, these inter
mediate components can provide other bene?ts. For instance,
manage multiple secondary copies 116 of a particular data
object or metadata, each representing the state of the data
object in primary data 112 at a particular point in time. More
over, since an instance of a data object in primary data 112
as discussed further below with respect to FIG. 1D, distrib
may eventually be deleted from the primary storage device
104 and the ?le system, the information management system
100 may continue to manage point-in-time representations of
that data object, even though the instance in primary data 112
uting some of the work involved in creating secondary copies
more secondary storage computing devices 106 as shown in
no longer exists.
FIG. 1A and/or one or more media agents, which can be
[0089] For virtualized computing devices the operating
system and other applications 110 of the client computing
age computing devices 106 (or other appropriate devices).
device(s) 102 may execute within or under the management
Media agents are discussed below (e.g., with respect to FIGS.
of virtualization software (e.g., a VMM), and the primary
1C-1E).
116 can enhance scalability.
[0095]
The intermediate components can include one or
software modules residing on corresponding secondary stor
© Copyright 2026 Paperzz