IP Library Granted Patent US 12,657,157
Granted Patent B2
US 12,657,157 · App. 18/932,852 · Granted Jun 16, 2026

Extending an expiration time of an object associated with an archive

Inventors: Dane Van Dyck (Atlanta, GA); Praveen Kumar Yarlagadda (Santa Clara, CA)
Assignee: Cohesity, Inc.
G06F16/113G06F12/0253G06F16/1752
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,657,157
App. No.
18/932,852
Granted
Jun 16, 2026
Kind
B2
Abstract

An amount of expiration time extension for one or more objects associated with a first archive of a first snapshot of a source storage is determined based at least in part on a second data management policy associated with a second archive and one or more dynamically determined metrics. The first archive that includes the one or more objects is caused to be stored to a remote storage. At least a portion of content of the first archive is referenced by data chunks stored in a first chunk object of the remote storage and the first archive is associated with a first data management policy. Based on the determined amount of expiration time extension, an expiration time for the one or more objects associated with the first archive is stored in an archive metadata of the one or more objects associated with the first archive.

Claims (35)

1 . A method comprising:

determining, by a computing system, based at least in part on a second data management policy associated with a second archive, an expiration time for one or more objects included in a first archive associated with a first data management policy;

storing, by the computing system, the first archive to a remote storage, wherein at least a portion of the first archive references data chunks stored in a chunk object of the remote storage;

determining, by the computing system, whether the first archive is subject to a data lock period;

before extending the expiration time for the one or more objects included in the first archive, determining, by the computing system, whether to extend the expiration time for the one or more objects included in the first archive based at least in part on a rate of change between the first and second archives;

extending, by the computing system, the expiration time for the one or more objects included in the first archive in response to a determination that the first archive is subject to the data lock period;

determining, by the computing system, the first archive has expired; and

performing, by the computing system, according to the expiration time for the one or more objects included in the first archive, based on determining the first archive has expired and none of one or more objects included in the second archive reference the data chunks stored in the chunk object, garbage collection of the chunk object of the remote storage.

2 . The method of claim 1 , wherein determining the expiration time for the one or more objects included in the first archive comprises applying, by the computing system, a machine learning model to determine the expiration time for the one or more objects included in the first archive.

3 . The method of claim 1 , wherein the second archive comprises an incremental archive of the first archive.

4 . The method of claim 1 , wherein determining whether to extend the expiration time for the one or more objects included in the first archive comprises determining, by the computing system, whether to extend the expiration time for the one or more objects included in the first archive using a machine learning model.

5 . The method of claim 1 , further comprising storing, by the computing system, the expiration time in an archive metadata object associated with the first archive, wherein determining the first archive has expired is based on the expiration time stored in the archive metadata object associated with the first archive.

6 . A computing system comprising:

non-transitory computer-readable storage media storing instructions; and

processing circuitry that executes the instructions to:

determine, based at least in part on a second data management policy associated with a second archive, an expiration time for one or more objects included in a first archive associated with a first data management policy;

store the first archive to a remote storage, wherein at least a portion of the first archive references data chunks stored in a chunk object of the remote storage;

determine whether the first archive is subject to a data lock period;

before extending the expiration time for the one or more objects included in the first archive, determine whether to extend the expiration time for the one or more objects included in the first archive based at least in part on a rate of change between the first and second archives;

extend the expiration time for the one or more objects included in the first archive in response to a determination that the first archive is subject to the data lock period;

determine the first archive has expired; and

perform, according to the expiration time for the one or more objects included in the first archive, based on determining the first archive has expired and none of one or more objects included in the second archive reference the data chunks stored in the chunk object, garbage collection of the chunk object of the remote storage.

7 . The computing system of claim 6 , wherein to determine the expiration time for the one or more objects included in the first archive the processing circuitry that executes the instructions to apply a machine learning model to determine the expiration time for the one or more objects included in the first archive.

8 . The computing system of claim 6 , wherein the second archive comprises an incremental archive of the first archive.

9 . The computing system of claim 6 , wherein the processing circuitry executes the instructions to, before extending the expiration time for the one or more objects included in the first archive, determine, whether to extend the expiration time for the one or more objects included in the first archive using a machine learning model.

10 . The computing system of claim 6 , wherein the processing circuitry executes the instructions to store the expiration time in an archive metadata object associated with the first archive, wherein determining the first archive has expired is based on the expiration time stored in the archive metadata object associated with the first archive.

11 . Non-transitory computer-readable storage media comprising instructions that, when executed, cause processing circuitry of a computing system to:

determine, based at least in part on a second data management policy associated with a second archive, an expiration time for one or more objects included in a first archive associated with a first data management policy;

store the first archive to a remote storage, wherein at least a portion of the first archive references data chunks stored in a chunk object of the remote storage;

determine whether the first archive is subject to a data lock period;

before extending the expiration time for the one or more objects included in the first archive, determine whether to extend the expiration time for the one or more objects included in the first archive based at least in part on a rate of change between the first and second archives;

extend the expiration time for the one or more objects included in the first archive in response to a determination that the first archive is subject to the data lock period;

determine the first archive has expired; and

perform, according to the expiration time for the one or more objects included in the first archive, based on determining the first archive has expired and none of one or more objects included in the second archive reference the data chunks stored in the chunk object, garbage collection of the chunk object of the remote storage.

12 . The non-transitory computer-readable storage media of claim 11 , wherein to determine the expiration time for the one or more objects included in the first archive the instructions, when executed, cause processing circuitry to apply a machine learning model to determine the expiration time for the one or more objects included in the first archive.

Assignments (1)
PATENT SECURITY AGREEMENT SUPPLEMENT Recorded Aug 6, 2025
From: COHESITY, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 072373/0649 →
Continuity (2)
Continuation 17589116 · Jan 31, 2022
Related Publication 20250053539A1 · Feb 13, 2025
References Cited (60)
US 7293027B2 · Margolus · 2007 [cited by applicant]
US 7590807B2 · McGovern · 2009 [cited by applicant]
US 9166989B2 · Huang · 2015 [cited by applicant]
US 9323760B1 · Chopra et al. · 2016 [cited by applicant]
US 10140303B1 · Patterson · 2018 [cited by applicant]
US 10228958B1 · Rustad et al. · 2019 [cited by applicant]
US 10235417B1 · Sterin et al. · 2019 [cited by applicant]
US 10528521B2 · Agarwal et al. · 2020 [cited by applicant]
US 11086545B1 · Dayal · 2021 [cited by applicant]
US 11748299B2 · Yarlagadda et al. · 2023 [cited by applicant]
US 20050055519A1 · Stuart et al. · 2005 [cited by applicant]
US 20050138640A1 · Fresko · 2005 [cited by applicant]
US 20050257400A1 · Sommerer et al. · 2005 [cited by applicant]
US 20060143251A1 · Peterson et al. · 2006 [cited by applicant]
US 20080263108A1 · Herbst et al. · 2008 [cited by applicant]
US 20090125675A1 · Tsuboki et al. · 2009 [cited by applicant]
US 20100036872A1 · Hiraiwa · 2010 [cited by examiner]
US 20110231374A1 · Jain et al. · 2011 [cited by applicant]
US 20110238935A1 · Meehan · 2011 [cited by applicant]
US 20120117029A1 · Gold · 2012 [cited by applicant]
US 20130080395A1 · Gong · 2013 [cited by applicant]
US 20130159648A1 · Anglin et al. · 2013 [cited by applicant]
US 20150066873A1 · Voruganti · 2015 [cited by applicant]
US 20170017646A1 · Kumar · 2017 [cited by examiner]
US 20170169038A1 · Borate et al. · 2017 [cited by applicant]
US 20170212915A1 · Borate et al. · 2017 [cited by applicant]
US 20180267710A1 · Deshpande et al. · 2018 [cited by applicant]
US 20190340261A1 · Jain et al. · 2019 [cited by applicant]
US 20200250083A1 · Shilane et al. · 2020 [cited by applicant]
US 20200410135A1 · Macey et al. · 2020 [cited by applicant]
US 20210042263A1 · Zdornov et al. · 2021 [cited by applicant]
US 20210072928A1 · Winarski · 2021 [cited by applicant]
US 20210124648A1 · Srinivasan et al. · 2021 [cited by applicant]
US 20210141698A1 · Bourgeois et al. · 2021 [cited by applicant]
US 20210294774A1 · Keller et al. · 2021 [cited by applicant]
US 20220066670A1 · Naik et al. · 2022 [cited by applicant]
US 20220083514A1 · Rath et al. · 2022 [cited by applicant]
US 20220100652A1 · Liu et al. · 2022 [cited by applicant]
US 20220121529A1 · Rath et al. · 2022 [cited by applicant]
US 20220222074A1 · Rath · 2022 [cited by examiner]
US 20220382652A1 · Yadav et al. · 2022 [cited by applicant]
US 20220413968A1 · Yeger et al. · 2022 [cited by applicant]
US 20230029616A1 · Pandit et al. · 2023 [cited by applicant]
US 20230032714A1 · Pandit et al. · 2023 [cited by applicant]
US 20230077938A1 · Yarlagadda et al. · 2023 [cited by applicant]
US 20230103474A1 · Gunda et al. · 2023 [cited by applicant]
US 20230147671A1 · Narulkar · 2023 [cited by applicant]
US 20230244633A1 · Van Dyck et al. · 2023 [cited by applicant]
US 20230273897A1 · Van Dyck et al. · 2023 [cited by applicant]
US 20230359586A1 · Yarlagadda et al. · 2023 [cited by applicant]
US 20240103978A1 · Madan et al. · 2024 [cited by applicant]
US 20240202162A1 · Elango et al. · 2024 [cited by applicant]
US 20240311342A1 · Shankar et al. · 2024 [cited by applicant]
Bill Tolson, Cloud Archiving and Immutability; Azure offers WORM, Archive360.com, Sep. 20, 2018, https://www.archive360.com/blog/cloud-archiving-and-immutability-azu. [cited by applicant]
Cohesity, “Architecture Matters Cohesity vs Dell EMC PowerScale (previously Dell EMC Isilon) NAS Scale-Out Limits”, Cohesity, Sep. 2021, 11 pp., Retrieved from the Internet on Aug. 4, 2023 from URL: https://www.cohesity… [cited by applicant]
Cohesity, “Cohesity SpanFS and SnapTree”, Cohesity, Sep. 2019, 11 pp., Retrieved from the Internet on Aug. 4, 2023 from URL: https://www.cohesity.com/resource-assets/white-paper/Cohesity-SpanFS-and-SnapTree-WP.pdf. [cited by applicant]
Ju-Lien Lim, Protecting Backup Archives with WORM and Tape Retention Lock, AWS Storage Blog, Aug. 19, 2020, https://aws.amazon.com/blogs/storage/protecting-archives-with-worm-an/. [cited by applicant]
Prosecution History from U.S. Appl. No. 17/589,116, dated Jul. 21, 2023 through Nov. 4, 2024, 94 pp. [cited by applicant]
Simha et al., “A Scalable Deduplication and Garbage Collection Engine for Incremental Backup”, Association for Computing Machinery, Jun. 30, 2013, 12 pp. [cited by applicant]
VMware Customer Connect, “Cohesity Platform for Data Protection of VMware Cloud on AWS (80830)”, Sep. 18, 2020, 10 pp., Retrieved from the Internet on Oct. 10, 2023 from URL: https://kb.vmware.com/s/article/80830#. [cited by applicant]