IP Library Granted Patent US 11,748,299
Granted Patent B2
US 11,748,299 · App. 17/476,873 · Granted Sep 5, 2023

Managing objects stored at a remote storage

Inventors: Praveen Kumar Yarlagadda (Santa Clara, CA); Aiswarya Bhavani Shankar (San Jose, CA); Venkata Ranga Radhanikanth Guturi (San Jose, CA); Anubhav Gupta (Sunnyvale, CA)
Assignee: Cohesity, Inc.
G06F16/125G06F11/1451G06F12/0253G06F16/113G06F16/128G06F16/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 11,748,299
App. No.
17/476,873
Granted
Sep 5, 2023
Kind
B2
Abstract

A first archive of a first snapshot of a source storage is caused to be stored to a remote storage. At least a portion of content of the first archive is stored in data chunks stored in a first chunk object of the remote storage and the first archive is associated with a first data policy. A second archive of a second snapshot of the source storage is caused to be stored to the remote storage. At least a portion of content of the second archive is referenced from data chunks stored in the first chunk object and the second archive is associated with a second data policy. Policy compliance of the chunk object storing data chunks referenced by the first archive and the second archive that are different is automatically managed based on the first data policy and the second data policy that are different.

Claims (33)

1. A method, comprising:

causing storage to a remote storage, by at least one processor of one or more processors, a first archive of a first snapshot of a source storage, wherein at least a portion of content of the first archive is stored in data chunks stored in a first chunk object of the remote storage and the first archive is associated with a first data policy;

causing storage to the remote storage, by at least one processor of the one or more processors, a second archive of a second snapshot of the source storage, wherein at least a portion of content of the second archive is referenced from data chunks stored in the first chunk object and the second archive is associated with a second data policy; and

based on the first data policy and the second data policy that are different, automatically managing, by at least one processor of the one or more processors, policy compliance of the first chunk object storing data chunks referenced by the first archive and the second archive that are different.

2. The method of claim 1 , wherein the remote storage is a cloud storage.

3. The method of claim 1 , wherein data associated with the first archive and data associated with the second archive are deduplicated in the remote storage.

4. The method of claim 1 , wherein the first archive of the first snapshot of the source storage corresponds to a full archive of the source storage.

5. The method of claim 4 , wherein the second archive of the second snapshot of the source storage corresponds to an incremental archive of the source storage.

6. The method of claim 1 , wherein the data chunks stored in the first chunk object are associated with a first archived object associated with the first archive.

7. The method of claim 6 , wherein the portion of the content of the second archive corresponds to a second archived object associated with the second archive.

8. The method of claim 1 , wherein the first data policy specifies one or more of the following: a first retention time period for data associated with the first archive, a first data lock period for data associated with the first archive, or a first tiering period for data associated with the first archive.

9. The method of claim 8 , wherein the second data policy specifies one or more of the following: a second retention time period for data associated with the second archive, a second data lock period for data associated with the second archive, or a second tiering period for data associated with the second archive.

10. The method of claim 1 , wherein automatically managing the policy compliance of the first chunk object storing the data chunks referenced by the first archive and the second archive that are different includes setting a first expiration date for a first object associated with the first archive that includes the first chunk object.

11. The method of claim 10 , wherein the first expiration date for the first object associated with the first archive that includes the first chunk object is set when the first archive of the first snapshot of the source storage is stored at the remote storage.

12. The method of claim 10 , wherein automatically managing the policy compliance of the first chunk object storing the data chunks referenced by the first archive and the second archive that are different includes setting a second expiration date for a second object associated with the second archive.

13. The method of claim 12 , wherein the second expiration date for the second object associated with the second archive is set when the second archive of the second snapshot of the source storage is stored at the remote storage.

14. The method of claim 12 , further comprising determining whether any of the data chunks included in the first chunk object are referenced by the second object associated with the second archive.

15. The method of claim 14 , further comprising determining whether the second expiration date for the second object associated with the second archive expires after the first expiration date for the first object associated with the first archive that includes the first chunk object in response to determining that at least one data chunk included in the first chunk object is referenced by the second object associated with the second archive.

16. The method of claim 15 , further comprising extending the first expiration date for the first object associated with the first archive that includes the first chunk object to match the second expiration date for the second object associated with the second archive in response to determining that the second expiration date for the second object associated with the second archive expires after the first expiration date for the first object associated with the first archive that includes the first chunk object.

17. The method of claim 15 , further comprising maintaining the first expiration date for the first object associated with the first archive that includes the first chunk object in response to determining that the second expiration date for the second object associated with the second archive does not expire after the first expiration date for the first object associated with the first archive that includes the first chunk object.

18. The method of claim 1 , further comprising:

determining that a first expiration date associated with the first chunk object has expired; and

performing a garbage collection process with respect to the first chunk object.

19. A computer program product embodied in a non-transitory computer readable medium and comprising computer instructions, wherein execution of the computer instructions cause one or more processors to perform the steps of:

causing storage to a remote storage a first archive of a first snapshot of a source storage, wherein at least a portion of content of the first archive is stored in data chunks stored in a first chunk object of the remote storage and the first archive is associated with a first data policy;

causing storage to the remote storage a second archive of a second snapshot of the source storage, wherein at least a portion of content of the second archive is referenced from data chunks stored in the first chunk object and the second archive is associated with a second data policy; and

based on the first data policy and the second data policy that are different, automatically managing policy compliance of the first chunk object storing data chunks referenced by the first archive and the second archive that are different.

20. A system, comprising:

a memory storing computer instructions; and

one or more processors coupled to the memory, wherein when the computer instructions are executed by the one or more processors, the one or more processors are configured to:

cause storage to a remote storage a first archive of a first snapshot of a source storage, wherein at least a portion of content of the first archive is stored in data chunks stored in a first chunk object of the remote storage and the first archive is associated with a first data policy;

cause storage to the remote storage a second archive of a second snapshot of the source storage, wherein at least a portion of content of the second archive is referenced from data chunks stored in the first chunk object and the second archive is associated with a second data policy; and

based on the first data policy and the second data policy that are different, automatically managing policy compliance of the first chunk object storing data chunks referenced by the first archive and the second archive that are different.

Assignments (4)
TERMINATION AND RELEASE OF INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Dec 10, 2024
From: FIRST-CITIZENS BANK & TRUST COMPANY (AS SUCCESSOR TO SILICON VALLEY BANK)
To: COHESITY, INC.
Reel/Frame 069584/0498 →
SECURITY INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC; COHESITY, INC.
To: JPMORGAN CHASE BANK. N.A.
Reel/Frame 069890/0001 →
SECURITY INTEREST Recorded Sep 23, 2022
From: COHESITY, INC.
To: SILICON VALLEY BANK, AS ADMINISTRATIVE AGENT
Reel/Frame 061509/0818 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 29, 2022
From: YARLAGADDA, PRAVEEN KUMAR; SHANKAR, AISWARYA BHAVANI; GUTURI, VENKATA RANGA RADHANIKANTH; GUPTA, ANUBHAV
To: COHESITY, INC.
Reel/Frame 060932/0562 →
Continuity (1)
Related Publication 20230079486A1 · Mar 16, 2023
Cited By (5)
US 12,265,500 US 12,265,503 US 12,271,340 US 12,493,579 US 12,657,157