IP Library Granted Patent US 12,517,792
Granted Patent B2
US 12,517,792 · App. 17/537,254 · Granted Jan 6, 2026

Providing status of data storage operations within an information management system

Inventors: Manoj Kumar Pradhan (East Brunswick, NJ); Parag Gokhale (Marlboro, NJ); Anand Vibhor (Manalapan, NJ); Amey Vijaykumar Karandikar (Marlboro, NJ); Gopikannan Venugopalsamy (Sunnyvale, CA)
Assignee: Commvault Systems, Inc.
G06F11/1458G06F16/90335
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,517,792
App. No.
17/537,254
Filed
Nov 29, 2021
Granted
Jan 6, 2026
Kind
B2
Art Unit
2165
USPC
707/654
Abstract

Systems and methods disclosed herein provide users with granular current information about backup operations that completed at their user devices, regardless of whether a backup job as a whole, which comprises a plurality of backup operations across multiple computing devices, is presently complete or incomplete. Accordingly, an illustrative information management system comprises feature enhancements that collect granular information about data storage operations occurring at a client device, so that up-to-date status thereof may be provided to querying users on demand. Thus, the illustrative system need not wait for the completion of the backup job to answer status queries about backup operations occurring before the full completion of the backup job. Moreover, data backed up in one of these backup operations may be restored on demand independently of whether the backup job as a whole is presently complete or incomplete.

Claims (64)

1 . A system comprising:

a storage manager comprising one or more hardware processors, wherein the storage manager is configured to:

receive a query about a backup status of data of a client computing device;

determine that a backup job, which is not-yet completed, comprises a first backup operation that has been completed,

wherein the first backup operation previously backed up data of the client computing device, and

wherein the backup job comprises a plurality of backup operations associated with a plurality of client computing devices;

using a unique job identifier associated with the backup job, extract, from an indexing server, backup index information corresponding to the first backup operation, wherein the indexing server comprises one or more hardware processors and is distinct from the storage manager,

wherein the backup index information comprises metadata including timestamps, data sizes, locations, and file counts for completed backup operations;

process the backup index information to generate a status of the first backup operation;

provide the status of the first backup operation, which has been completed, to the client computing device, wherein the backup job is presently incomplete;

receive a request to restore data backed up by the first backup operation; and

in response to the request, initiate a restore operation of the data backed up by the first backup operation; and

a data agent executing on the client computing device, wherein the data agent is configured to:

generate a transaction log file comprising backup metadata associated with the first backup operation and further comprising an association with the backup job; and

transmit the transaction log file to the indexing server,

wherein the backup index information extracted from the indexing server is based on the transaction log file.

2 . The system of claim 1 wherein the storage manager is further configured to, in response to the query, provide a status of one or more backup operations among the plurality of backup operations of the backup job that were completed at the client computing device.

3 . The system of claim 1 wherein the client computing device comprises one or more hardware processors, and hosts one or more of: a core media agent and a data agent, and wherein one or more of the core media agent and the data agent is configured to:

receive, from the storage manager, a first instruction to execute the backup job, wherein the first instruction comprises job metadata for the backup job; and

use the job metadata received in the first instruction to perform a plurality of backup operations, including the first backup operation, without receiving an additional instruction from the storage manager, distinct from the first instruction to perform the backup job.

4 . The system of claim 1 wherein the data agent is further configured to:

perform the first backup operation using job metadata associated with the backup job, wherein the job metadata comprises information for executing the backup job.

5 . The system of claim 1 wherein the first backup operation is one of a first plurality of backup operations of the backup job that were completed at the client computing device, and wherein the storage manager is further configured to:

extract, from the indexing server, backup index information corresponding to all of the first plurality of backup operations of the backup job;

process the backup index information corresponding to all of the first plurality of backup operations of the backup job to determine status information thereof; and

provide the status information of all of the first plurality of backup operations of the backup job to the client computing device.

6 . The system of claim 1 wherein the storage manager is configured to:

upon receipt of the query about the backup status, utilize job metadata associated with the backup job to extract from the indexing server backup index information for completed backup operations of the backup job.

7 . The system of claim 1 wherein the storage manager is configured to:

store job metadata of a synthetic full backup job of data of the client computing device, wherein the synthetic full backup job is completed, and wherein the synthetic full backup job is distinct from the backup job that comprises the first backup operation;

upon receipt of the query about the backup status, retrieve the job metadata of the synthetic full backup job;

process the backup index information and the job metadata of the synthetic full backup job to generate a combined status of the first backup operation and the synthetic full backup job; and

provide the combined status to the client computing device.

8 . The system of claim 1 wherein the storage manager is configured to, in response to the query and after the backup job is complete, provide a status of the plurality of backup operations of the backup job that were completed at the client computing device.

9 . The system of claim 1 wherein the client computing device comprises one or more hardware processors, and hosts one or more of a core media agent and a data agent, wherein one or more of the core media agent and the data agent is configured to perform the restore operation.

10 . The system of claim 1 wherein the storage manager is configured to:

receive a request to restore data backed up by the first backup operation;

determine that a second backup operation is currently backing up data at the client computing device;

refrain from initiating a restore operation of the data backed up by the first backup operation, until the second backup operation is complete; and

after the second backup operation is complete, initiate a restore operation of the data backed up by the first backup operation.

11 . The system of claim 1 wherein the status of the first backup operation comprises a statistical performance metric of the first backup operation, which comprises one or more of: a timestamp of the first backup operation, one or more of a size of data backed up in the first backup operation, a size of data associated with an application backed up by the first backup operation, and a number of data files backed up in the first backup operation.

12 . The system of claim 1 wherein the backup index information identifies one or more of: the backup job, the first backup operation, the client computing device, a timestamp of the first backup operation, one or more backup copies generated by the first backup operation, and one or more storage locations of the one or more backup copies.

13 . The system of claim 1 wherein the status of the first backup operation is provided to the client computing device independently of whether a second backup operation of the backup job is currently backing up data at the client computing device.

14 . The system of claim 1 wherein the status of the first backup operation is provided to the client computing device independently of whether other backup operations of the backup job are complete or incomplete at other client computing devices.

15 . A computer-implemented method comprising:

receiving, by a storage manager, a query about a backup status of data of a client computing device, wherein the storage manager comprises one or more hardware processors;

determining that a backup job, which is not-yet completed, comprises a first backup operation that has been completed,

wherein the first backup operation previously backed up data of the client computing device, and

wherein the backup job comprises a plurality of backup operations associated with a plurality of client computing devices;

using a unique job identifier associated with the backup job, obtaining, from an indexing server, backup index information corresponding to the first backup operation, wherein the indexing server comprises one or more hardware processors and is distinct from the storage manager,

wherein the backup index information comprises metadata including timestamps, data sizes, locations, and file counts for completed backup operations;

processing the backup index information to generate a status of the first backup operation;

providing the status of the first backup operation, which has been completed, in response to the query, wherein the backup job is presently incomplete;

generating a transaction log file comprising backup metadata associated with the first backup operation and further comprising an association with the backup job;

transmitting the transaction log file to the indexing server,

wherein the backup index information extracted from the indexing server is based on the transaction log file;

receiving a request to restore data backed up by the first backup operation; and

in response to the request, initiating a restore operation of the data backed up by the first backup operation.

16 . The method of claim 15 wherein the client computing device comprises one or more hardware processors, and further comprising:

receiving, by the client computing device from the storage manager, a first instruction to execute the backup job, wherein the first instruction comprises job metadata for the backup job; and

using the job metadata received in the first instruction to perform a plurality of backup operations, including the first backup operation, without receiving an additional instruction from the storage manager, distinct from the first instruction to perform the backup job.

17 . The method of claim 15 wherein the client computing device comprises one or more hardware processors, and further comprising:

performing the first backup operation at the client computing device using job metadata associated with the backup job, wherein the job metadata comprises information for executing the backup job.

18 . The method of claim 15 further comprising: upon receipt of the query about the backup status, utilizing job metadata associated with the backup job to extract from the indexing server the backup index information for completed backup operations of the backup job.

Assignments (2)
SUPPLEMENTAL CONFIRMATORY GRANT OF SECURITY INTEREST IN UNITED STATES PATENTS Recorded Apr 16, 2025
From: COMMVAULT SYSTEMS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 070864/0344 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2021
From: PRADHAN, MANOJ KUMAR; GOKHALE, PARAG; VIBHOR, ANAND; KARANDIKAR, AMEY VIJAYKUMAR; VENUGOPALSAMY, GOPIKANNAN
To: COMMVAULT SYSTEMS, INC.
Reel/Frame 058249/0005 →
Continuity (1)
Related Publication 20230168970A1 · Jun 1, 2023
References Cited (192)
US 4084231A · Capozzi et al. · 1978 [cited by applicant]
US 4267568A · Dechant et al. · 1981 [cited by applicant]
US 4283787A · Chambers · 1981 [cited by applicant]
US 4417321A · Chang et al. · 1983 [cited by applicant]
US 4641274A · Swank · 1987 [cited by applicant]
US 4654819A · Stiffler et al. · 1987 [cited by applicant]
US 4686620A · Ng · 1987 [cited by applicant]
US 4912637A · Sheedy et al. · 1990 [cited by applicant]
US 4995035A · Cole et al. · 1991 [cited by applicant]
US 5005122A · Griffin et al. · 1991 [cited by applicant]
US 5093912A · Dong et al. · 1992 [cited by applicant]
US 5133065A · Cheffetz et al. · 1992 [cited by applicant]
US 5193154A · Kitajima et al. · 1993 [cited by applicant]
US 5212772A · Masters · 1993 [cited by applicant]
US 5226157A · Nakano et al. · 1993 [cited by applicant]
US 5239647A · Anglin et al. · 1993 [cited by applicant]
US 5241668A · Eastridge et al. · 1993 [cited by applicant]
US 5241670A · Eastridge et al. · 1993 [cited by applicant]
US 5276860A · Fortier et al. · 1994 [cited by applicant]
US 5276867A · Kenley et al. · 1994 [cited by applicant]
US 5287500A · Stoppani, Jr. · 1994 [cited by applicant]
US 5301286A · Rajani · 1994 [cited by applicant]
US 5321816A · Rogan et al. · 1994 [cited by applicant]
US 5347653A · Flynn et al. · 1994 [cited by applicant]
US 5410700A · Fecteau et al. · 1995 [cited by applicant]
US 5420996A · Aoyagi · 1995 [cited by applicant]
US 5454099A · Myers et al. · 1995 [cited by applicant]
US 5559991A · Kanfi · 1996 [cited by applicant]
US 5642496A · Kanfi · 1997 [cited by applicant]
US 5835915A · Car et al. · 1998 [cited by applicant]
US 5960436A · Chang et al. · 1999 [cited by applicant]
US 6418478B1 · Ignatius et al. · 2002 [cited by applicant]
US 6457014B1 · Parker · 2002 [cited by applicant]
US 6542972B2 · Ignatius et al. · 2003 [cited by applicant]
US 6658436B2 · Oshinsky et al. · 2003 [cited by applicant]
US 6721767B2 · DeMeno et al. · 2004 [cited by applicant]
US 6760723B2 · Oshinsky et al. · 2004 [cited by applicant]
US 7003641B2 · Prahlad · 2006 [cited by applicant]
US 7035880B1 · Crescenti · 2006 [cited by applicant]
US 7107298B2 · Prahlad · 2006 [cited by applicant]
US 7130970B2 · Devassy · 2006 [cited by applicant]
US 7162496B2 · Amarendran et al. · 2007 [cited by applicant]
US 7174433B2 · Kottomtharayil et al. · 2007 [cited by applicant]
US 7246207B2 · Kottomtharayil · 2007 [cited by applicant]
US 7315923B2 · Retnamma · 2008 [cited by applicant]
US 7343453B2 · Prahlad · 2008 [cited by applicant]
US 7389311B1 · Crescenti et al. · 2008 [cited by applicant]
US 7395282B1 · Crescenti · 2008 [cited by applicant]
US 7440982B2 · Lu · 2008 [cited by applicant]
US 7454569B2 · Kavuri · 2008 [cited by applicant]
US 7490207B2 · Amarendran et al. · 2009 [cited by applicant]
US 7500053B1 · Kavuri · 2009 [cited by applicant]
US 7529782B2 · Prahlad · 2009 [cited by applicant]
US 7536291B1 · Vijayan Retnamma et al. · 2009 [cited by applicant]
US 7543125B2 · Gokhale · 2009 [cited by applicant]
US 7546324B2 · Prahlad et al. · 2009 [cited by applicant]
US 7603386B2 · Amarendran et al. · 2009 [cited by applicant]
US 7606844B2 · Kottomtharavil · 2009 [cited by applicant]
US 7613752B2 · Prahlad · 2009 [cited by applicant]
US 7617253B2 · Prahlad et al. · 2009 [cited by applicant]
US 7617262B2 · Prahlad · 2009 [cited by applicant]
US 7620710B2 · Kottomtharayil · 2009 [cited by applicant]
US 7636743B2 · Erofeev · 2009 [cited by applicant]
US 7651593B2 · Prahlad · 2010 [cited by applicant]
US 7657550B2 · Prahlad · 2010 [cited by applicant]
US 7660807B2 · Prahlad · 2010 [cited by applicant]
US 7661028B2 · Erofeev · 2010 [cited by applicant]
US 7734669B2 · Kottomtharayil · 2010 [cited by applicant]
US 7747579B2 · Prahlad · 2010 [cited by applicant]
US 7793148B2 · Beardsley et al. · 2010 [cited by applicant]
US 7801864B2 · Prahlad · 2010 [cited by applicant]
US 7809914B2 · Kottomtharayil · 2010 [cited by applicant]
US 8122211B2 · Stocklein · 2012 [cited by examiner]
US 8156086B2 · Lu · 2012 [cited by applicant]
US 8170995B2 · Prahlad · 2012 [cited by applicant]
US 8229954B2 · Kottomtharayil · 2012 [cited by applicant]
US 8230195B2 · Amarendran · 2012 [cited by applicant]
US 8239647B2 · Stocklein · 2012 [cited by examiner]
US 8285681B2 · Prahlad · 2012 [cited by applicant]
US 8307177B2 · Prahlad · 2012 [cited by applicant]
US 8364652B2 · Vijayan · 2013 [cited by applicant]
US 8370542B2 · Lu et al. · 2013 [cited by applicant]
US 8578120B2 · Attarde · 2013 [cited by applicant]
US 8627025B2 · Doshi et al. · 2014 [cited by applicant]
US 8954446B2 · Retnamma · 2015 [cited by applicant]
US 9020900B2 · Retnamma · 2015 [cited by applicant]
US 9098495B2 · Goklhale · 2015 [cited by applicant]
US 9239687B2 · Vijayan · 2016 [cited by applicant]
US 9305056B1 · Gupta et al. · 2016 [cited by applicant]
US 9444811B2 · Nara · 2016 [cited by applicant]
US 9448731B2 · Nallathambi · 2016 [cited by applicant]
US 9483201B2 · Kripalani · 2016 [cited by examiner]
US 9491112B1 · Patel et al. · 2016 [cited by applicant]
US 9575804B2 · Kochunni et al. · 2017 [cited by applicant]
US 9633033B2 · Vijayan · 2017 [cited by applicant]
US 9639274B2 · Maranna · 2017 [cited by applicant]
US 9645762B2 · Nara · 2017 [cited by applicant]
US 9648105B2 · Nallathambi et al. · 2017 [cited by applicant]
US 9904481B2 · Joshi et al. · 2018 [cited by applicant]
US 9921920B2 · Nallathambi et al. · 2018 [cited by applicant]
US 9939981B2 · Varadharajan et al. · 2018 [cited by applicant]
US 9996428B2 · Nallathambi et al. · 2018 [cited by applicant]
US 10042710B2 · Mutalik · 2018 [cited by examiner]
US 10152231B2 · Kripalani · 2018 [cited by examiner]
US 10474388B2 · Nara et al. · 2019 [cited by applicant]
US 10521308B2 · Nallathambi et al. · 2019 [cited by applicant]
US 10540236B2 · Mutalik · 2020 [cited by examiner]
US 10628266B2 · Nallathambi et al. · 2020 [cited by applicant]
US 10628267B2 · Pradhan et al. · 2020 [cited by applicant]
US 10673943B2 · Pradhan et al. · 2020 [cited by applicant]
US 10824337B2 · Kripalani · 2020 [cited by examiner]
US 11221983B1 · Chakravarthy · 2022 [cited by examiner]
US 11249863B2 · Pradhan et al. · 2022 [cited by applicant]
US 11263173B2 · Bedadala et al. · 2022 [cited by applicant]
US 11321183B2 · Pradhan et al. · 2022 [cited by applicant]
US 11330052B2 · Pradhan et al. · 2022 [cited by applicant]
US 20030074600A1 · Tamatsu · 2003 [cited by applicant]
US 20030120636A1 · Bird et al. · 2003 [cited by applicant]
US 20060224846A1 · Amarendran · 2006 [cited by applicant]
US 20070185922A1 · Kapoor et al. · 2007 [cited by applicant]
US 20070186068A1 · Agrawal · 2007 [cited by applicant]
US 20080040551A1 · Gray et al. · 2008 [cited by applicant]
US 20080270718A1 · Stocklein · 2008 [cited by examiner]
US 20090319534A1 · Gokhale · 2009 [cited by applicant]
US 20100005151A1 · Gokhale · 2010 [cited by applicant]
US 20110302140A1 · Gokhale et al. · 2011 [cited by applicant]
US 20120096093A1 · Bouw et al. · 2012 [cited by applicant]
US 20120117346A1 · Stocklein · 2012 [cited by examiner]
US 20120150818A1 · Retnamma et al. · 2012 [cited by applicant]
US 20120150826A1 · Retnamma et al. · 2012 [cited by applicant]
US 20130077926A1 · Bickham · 2013 [cited by examiner]
US 20140019454A1 · Carter et al. · 2014 [cited by applicant]
US 20140040579A1 · Kripalani · 2014 [cited by examiner]
US 20140040580A1 · Kripalani · 2014 [cited by examiner]
US 20140046908A1 · Patiejunas et al. · 2014 [cited by applicant]
US 20140101113A1 · Zhang et al. · 2014 [cited by applicant]
US 20140181035A1 · Moue et al. · 2014 [cited by applicant]
US 20140189432A1 · Gokhale · 2014 [cited by applicant]
US 20140201170A1 · Vijayan et al. · 2014 [cited by applicant]
US 20150039931A1 · Blood et al. · 2015 [cited by applicant]
US 20150074536A1 · Varadharajan et al. · 2015 [cited by applicant]
US 20150205682A1 · Gokhale et al. · 2015 [cited by applicant]
US 20150268876A1 · Ahn et al. · 2015 [cited by applicant]
US 20150363319A1 · Qi et al. · 2015 [cited by applicant]
US 20160004721A1 · Iyer et al. · 2016 [cited by applicant]
US 20160077926A1 · Mutalik · 2016 [cited by examiner]
US 20160085797A1 · Patiejunas et al. · 2016 [cited by applicant]
US 20160110266A1 · Nara et al. · 2016 [cited by applicant]
US 20160162369A1 · Ahn · 2016 [cited by examiner]
US 20160283274A1 · Kochunni et al. · 2016 [cited by applicant]
US 20160350391A1 · Vijayan et al. · 2016 [cited by applicant]
US 20170090772A1 · Kripalani · 2017 [cited by examiner]
US 20170168903A1 · Dornemann et al. · 2017 [cited by applicant]
US 20170185488A1 · Kumarasamy et al. · 2017 [cited by applicant]
US 20170193003A1 · Vijayan et al. · 2017 [cited by applicant]
US 20170206018A1 · Nara et al. · 2017 [cited by applicant]
US 20170228290A1 · Macanti et al. · 2017 [cited by applicant]
US 20170235647A1 · Kilaru et al. · 2017 [cited by applicant]
US 20170242871A1 · Kilaru et al. · 2017 [cited by applicant]
US 20180024862A1 · Nakagawa et al. · 2018 [cited by applicant]
US 20180253192A1 · Varadharajan et al. · 2018 [cited by applicant]
US 20190171364A1 · Kripalani · 2019 [cited by examiner]
US 20190278661A1 · Mehta et al. · 2019 [cited by applicant]
US 20190278663A1 · Mehta et al. · 2019 [cited by applicant]
US 20190325052A1 · Bastawala et al. · 2019 [cited by applicant]
US 20200192899A1 · Joshi et al. · 2020 [cited by applicant]
US 20200319799A1 · Mayer · 2020 [cited by examiner]
US 20220283989A1 · Bedadala et al. · 2022 [cited by applicant]
US 20230289264A1 · Nara · 2023 [cited by examiner]
EP 0259912 · 1988 [cited by applicant]
EP 0405926 · 1991 [cited by applicant]
EP 0467546 · 1992 [cited by applicant]
EP 0541281 · 1993 [cited by applicant]
EP 0774715 · 1997 [cited by applicant]
EP 0809184 · 1997 [cited by applicant]
EP 0899662 · 1999 [cited by applicant]
EP 0981090 · 2000 [cited by applicant]
WO 9513580 · 1995 [cited by applicant]
WO 9912098 · 1999 [cited by applicant]
WO 2006052872 · 2006 [cited by applicant]
Arneson, David A., “Development of Omniserver,” Control Data Corporation, Tenth IEEE Symposium on Mass Storage Systems, May 1990, ‘Crisis in Mass Storage’ Digest of Papers, pp. 88-93, Monterey, CA. [cited by applicant]
Cabrera et al., “ADSM: A Multi-Platform, Scalable, Backup and Archive Mass Storage System,” Digest of Papers, Compcon '95, Proceedings of the 40th IEEE Computer Society International Conference, Mar. 5, 1995-Mar. 9, 199… [cited by applicant]
Du et al., “MassStore: A low bandwidth, high De-duplication efficiency network backup system.”, 2012 International Conference on Systems and Informatics (ICSAI 2012), IEEE, 2012, pp. 886-890. [cited by applicant]
Eitel, “Backup and Storage Management in Distributed Heterogeneous Environments,” IEEE, Jun. 12-16, 1994, pp. 124-126. [cited by applicant]
Extended European Search Report in 19797007.2 dated Jan. 4, 2022 in 10 pages. [cited by applicant]
Huai et al., “Grid Job Support System n CGSP”, Advanced Parallel Processing Technologies Lecture Notes in Computer Sciences, Jan. 1, 2005, pp. 323-331. [cited by applicant]
Huff, KL, “Data Set Usage Sequence Number,” IBM Technical Disclosure Bulletin, vol. 24, No. 5, Oct. 1981 New York, US, pp. 2404-2406. [cited by applicant]
International Preliminary Report on Patentability in PCT/US2019/029876 dated Nov. 3, 2020 in 8 pages. [cited by applicant]
International Search Report in PCT/US2019/029876 dated Jul. 17, 2019 in 8 pages. [cited by applicant]
Rosenblum et al., “The Design and Implementation of a Log-Structure File System,” Operating Systems Review SIGOPS, vol. 25, No. 5, May 1991, New York, US, pp. 1-15. [cited by applicant]
Vrable, et al., “Cumulus: Filesystem Backup to the Cloud”, 2009, pp. 1-28. [cited by applicant]
Written Opinion in PCT/US2019/029876 dated Jul. 17, 2019 in 7 pages. [cited by applicant]