IP Library Granted Patent US 12,541,435
Granted Patent B2
US 12,541,435 · App. 18/505,868 · Granted Feb 3, 2026

Rapid access for restored cloud backup data

Inventors: Xia Hua (Mountain View, CA); Woonho Joseph Jung (Cupertino, CA); Jinmyeong Kim (Seongnam, KR); Junhwan Kim (Seoul, KR); Seunghyeon Kim (Seoul, KR); Yuchon Yi (Yongin-si, KR); Nicholas Gerald Zehender (San Jose, CA); Jason Sarich (Morgan Hill, CA); Jaewon Wi (Seoul, KR)
Assignee: Commvault Systems, Inc.
G06F11/1451G06F11/1435G06F11/1464G06F11/1469
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,541,435
App. No.
18/505,868
Granted
Feb 3, 2026
Kind
B2
Abstract

Techniques are disclosed relating to providing fast access to restored data in a cloud storage environment. A computing system stores multiple sets of incremental backup data that reflect changes in data being backed up between backup intervals and metadata that indicates which set of incremental backup data stores a given object. The computing system generates an endpoint for a requesting computing system, where the endpoint supports requests for restored backup data and data responses. In response to a request from the requesting computing system via the endpoint, the computing system queries the metadata based on the request and stores metadata retrieved from the query in a key/value store using object identification information as key data and the retrieved metadata as value data. The computing system provides requested data according to a lazy loading technique, including providing requested data via the endpoint based on the metadata in the key/value store.

Claims (42)

1 . A method, comprising:

storing, by a computing system:

multiple sets of incremental backup data that reflects changes in data being backed up between backup intervals, and

metadata that indicates, for a given object, which set of incremental backup data stores the given object;

generating, by the computing system, an endpoint for a requesting computing system, wherein the endpoint supports requests for restored backup data and data responses; and

in response to a request from the requesting computing system via the endpoint, by the computing system:

querying the metadata based on the request,

storing metadata retrieved from the querying in a key/value store using object identification information as key data and the retrieved metadata as value data,

providing requested data according to a lazy loading technique, including providing requested data via the endpoint based on the metadata in the key/value store; and

performing a full restore of the requested data to a data store of an account associated with the request, wherein the full restore is performed at least partially in parallel with the lazy loading technique.

2 . The method of claim 1 , wherein the object identification information includes an object name, a prefix, or both.

3 . The method of claim 1 , wherein the metadata includes object location information, an object creation time, and a size of the given object.

4 . The method of claim 1 , wherein the storing includes storing retrieved metadata in multiple different lookup tables of the key/value store.

5 . The method of claim 4 , wherein the querying the metadata includes performing multiple queries at least partially in parallel to multiple different partitions of the multiple sets of incremental backup data.

6 . The method of claim 5 , wherein the querying the metadata and the storing are based on a mapping of multiple partitions to a given lookup table of the multiple different lookup tables.

7 . The method of claim 5 , wherein:

a given partition of the multiple partitions includes an ordered list of objects; and

the storing maintains ordering from among the multiple partitions according to an ordered list of partitions.

8 . The method of claim 1 , wherein the request specifies at least one protection group.

9 . The method of claim 1 , wherein the request specifies restoration time information.

10 . The method of claim 1 , wherein the generating the endpoint is performed in response to an endpoint request from the requesting computing system.

11 . A non-transitory computer-readable medium having instructions stored thereon that are executable by a computing device to perform operations comprising:

storing:

multiple sets of incremental backup data that reflects changes in data being backed up between backup intervals, and

metadata that indicates, for a given object, which set of incremental backup data stores the given object;

generating an endpoint for a requesting computing system, wherein the endpoint supports requests for restored backup data and data responses; and

in response to a request from the requesting computing system via the endpoint:

querying the metadata based on the request, wherein the querying includes performing multiple queries at least partially in parallel to multiple different partitions of the multiple sets of incremental backup data,

storing metadata retrieved from the querying in a key/value store using object identification information as key data and the retrieved metadata as value data, wherein the storing includes storing retrieved metadata in multiple different lookup tables of the key/value store, and

providing requested data according to a lazy loading technique, including providing requested data via the endpoint based on the metadata in the key/value store.

12 . The non-transitory computer-readable medium of claim 11 , wherein the querying the metadata and the storing are based on a mapping of partitions to a given lookup table of the multiple different lookup tables.

13 . A method, comprising:

sending, by a requesting computing system, a request for restored backup data via an endpoint provided by a backup computing system; and

receiving requested data via the endpoint, wherein the backup computing system generated the requested data by:

querying metadata based on the request, wherein the metadata indicates, for a given object in incremental backup data, which set of incremental backup data stores the given object,;

storing metadata retrieved from the querying in a key/value store using object identification information as key data and the metadata as value data; and

providing the requested data based on the metadata in the key/value store; and

receiving a full restore of the requested data at a data store of an account associated with the request, at least partially in parallel with receiving requested data via the endpoint.

14 . The method of claim 13 , further comprising, the backup computing system performing the querying, the storing, and the providing.

15 . The method of claim 13 , further comprising:

requesting, by the requesting computing system, the endpoint.

16 . The method of claim 15 , wherein the request for the endpoint identifies a protection group and restoration time information.

Assignments (4)
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 Oct 25, 2024
From: CLUMIO, INC.
To: COMMVAULT SYSTEMS, INC.
Reel/Frame 069014/0545 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 7, 2024
From: CLUMIO, INC.
To: COMMVAULT SYSTEMS, INC.
Reel/Frame 068815/0722 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 8, 2023
From: HUA, XIA; JUNG, WOONHO JOSEPH; KIM, JINMYEONG; KIM, JUNHWAN; KIM, SEUNGHYEON; WI, JAEWON; YI, YUCHON; ZEHENDER, NICHOLAS GERALD; SARICH, JASON
To: CLUMIO, INC.
Reel/Frame 065807/0896 →
Continuity (1)
Related Publication 20250156277A1 · May 15, 2025
References Cited (34)
US 8799223B1 · Karmarkar · 2014 [cited by examiner]
US 10635545B1 · Bono et al. · 2020 [cited by applicant]
US 10725967B1 · Natanzon · 2020 [cited by applicant]
US 10896097B1 · Purcell · 2021 [cited by examiner]
US 12111734B2 · Agarwal · 2024 [cited by applicant]
US 20110252192A1 · Busch et al. · 2011 [cited by applicant]
US 20130179947A1 · Kline, III · 2013 [cited by examiner]
US 20140089279A1 · Gibson · 2014 [cited by examiner]
US 20140181438A1 · Varadharajan et al. · 2014 [cited by applicant]
US 20140310247A1 · Vijayan et al. · 2014 [cited by applicant]
US 20160203145A1 · Haviv et al. · 2016 [cited by applicant]
US 20170010941A1 · Shimada et al. · 2017 [cited by applicant]
US 20190278663A1 · Mehta et al. · 2019 [cited by applicant]
US 20200241967A1 · Dain · 2020 [cited by examiner]
US 20200311039A1 · Gupta et al. · 2020 [cited by applicant]
US 20210096958A1 · Kumar et al. · 2021 [cited by applicant]
US 20210406129A1 · Zheng et al. · 2021 [cited by applicant]
US 20220229733A1 · Chitloor et al. · 2022 [cited by applicant]
US 20220229735A1 · Chopra et al. · 2022 [cited by applicant]
US 20220263657A1 · Chang · 2022 [cited by applicant]
US 20220283707A1 · Ayzenberg et al. · 2022 [cited by applicant]
US 20230019837A1 · Jennings · 2023 [cited by examiner]
US 20230315582A1 · Anand · 2023 [cited by applicant]
US 20240022446A1 · Vaughn · 2024 [cited by examiner]
US 20240152491A1 · Malik · 2024 [cited by examiner]
CN 115658382A · 2023 [cited by applicant]
Office Action in U.S. Appl. No. 17/929,591 mailed Jan. 29, 2024, 30 pages. [cited by applicant]
Notice of Allowance in U.S. Appl. No. 17/929,591 mailed Aug. 7, 2024, 8 pages. [cited by applicant]
Gilani, How to Search an S3 Bucket, a Complete Guide, Shade, posted Oct. 29, 2023; https://www.shade.inc/tools/how-to-search-an-s3-bucket (Year: 2023); 10 pages. [cited by applicant]
Amazon Simple Storage Service—User Guide: API Version Mar. 1, 2006; copyright 2022; 1565 pages. [cited by applicant]
IBM i 7.3: Systems management Backup, Recovery, and Media Services for i; Copyright International Business Machines Corporation 1998, 2015; 492 pages. [cited by applicant]
Oracle, Database Backup and Recover Basics, 4.4-4.4.4.4, 2022, 10 pages. [cited by applicant]
IBM, Incremental backups; https://www.ibm.com/docs/en/psfa/7.2.1?topic=command-incremental-backups; last Updated: Apr. 26, 2022, copyright IBM Corporation 2015, 2016; 1 page. [cited by applicant]
Office Action in U.S. Appl. No. 17/929,593 mailed May 28, 2024, 23 pages. [cited by applicant]