IP Library Granted Patent US 11,249,940
Granted Patent B2
US 11,249,940 · App. 16/811,813 · Granted Feb 15, 2022

Snapshot archive management

Inventors: Venkata Ranga Radhanikanth Guturi (San Jose, CA); Tushar Mahata (Cupertino, CA); Praveen Kumar Yarlagadda (Santa Clara, CA)
Assignee: Cohesity, Inc.
G06F16/113G06F11/1464G06F16/13G06F16/14G06F16/2246G06F16/9027G06F2201/84
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,249,940
App. No.
16/811,813
Granted
Feb 15, 2022
Kind
B2
Abstract

At least a portion of data of a tree data structure is serialized into a first set of flat data. At least a portion of a structure of the tree data structure is serialized to reproduce at least the portion of the structure in a second set of flat data. It is determined to access a desired data of the tree data structure from an archive. The second set of flat data is read to reconstitute at least the portion of a structure of the tree data structure. The reconstituted structure of the tree data structure is used to determine a data offset associated with the first set of flat data, wherein the data offset corresponds to the desired data. The desired data is accessed using the data offset associated with the first set of flat data.

Claims (36)

1. A method, comprising:

determining a view of data associated with a request for the data;

retrieving from an archive storage a plurality of archives of data corresponding to the determined view of data, wherein the plurality of archives of data includes at least a first archive of data and a second archive of data;

reconstituting a tree data structure associated with the view of data, wherein reconstituting the tree data structure associated with the view of data comprises reading a flat set of data corresponding to the first archive of data and using a file offset to read a portion of a second flat set of data corresponding to the second archive of data, wherein a data block associated with the flat set of data corresponding to the first archive of data includes the file offset to a data block associated with the flat set of data corresponding to the second archive of data;

using the reconstituted tree data structure to access the requested data that was stored in the second archive of data; and

providing the requested data.

2. The method of claim 1 , further comprising receiving the request for the data.

3. The method of claim 1 , wherein using the reconstituted tree data structure to access the requested data comprises traversing the reconstituted tree data structure.

4. The method of claim 1 , wherein the view of data associated with the request for the data corresponds to a backup performed at a particular time.

5. The method of claim 4 , wherein the view of data associated with the request for the data was archived to the archive storage according to an archive policy.

6. The method of claim 5 , wherein the view of data associated with the request for the data was deleted from a storage system according to a retention policy after the view of data associated with the request for the data was archived to the archive storage.

7. The method of claim 1 , wherein the flat set of data corresponding to the first archive of data and the second flat set of data corresponding to the second archive of data include a plurality of data blocks that correspond to nodes of the tree data structure.

8. The method of claim 7 , wherein the plurality of data blocks that corresponds to nodes of the tree data structure include at least a first data block that corresponds to a root node of the tree data structure, a second data block that corresponds to an intermediate node of the tree data structure, and a third data block that corresponds to an information storing node of the tree data structure.

9. The method of claim 8 , wherein the first data block at least includes a file offset to the second data block.

10. The method of claim 8 , wherein the second data block at least includes a file offset to the information storing node.

11. The method of claim 1 , wherein the archive storage is a cloud storage system or a cluster storage system.

12. The method of claim 1 , wherein the first and second archives of data are serialized.

13. A non-transitory computer readable storage medium and comprising computer instructions for:

determining a view of data associated with a request for the data;

retrieving from an archive storage a plurality of archives of data corresponding to the determined view of data, wherein the plurality of archives of data includes at least a first archive of data and a second archive of data;

reconstituting a tree data structure associated with the view of data, wherein reconstituting the tree data structure associated with the view of data comprises reading a flat set of data corresponding to the first archive of data and using a file offset to read a portion of a second flat set of data corresponding to the second archive of data, wherein a data block associated with the flat set of data corresponding to the first archive of data includes the file offset to a data block associated with the flat set of data corresponding to the second archive of data;

using the reconstituted tree data structure to access the requested data that was stored in the second archive of data; and

providing the requested data.

14. The non-transitory computer readable storage medium of claim 13 , further comprising instructions for receiving the request for the data.

15. The non-transitory computer readable storage medium of claim 13 , wherein using the reconstituted tree data structure to access the requested data comprises traversing the reconstituted tree data structure.

16. The non-transitory computer readable storage medium of claim 13 , wherein the view of data associated with the request for the data corresponds to a backup performed at a particular time.

17. The non-transitory computer readable storage medium of claim 16 , wherein the view of data associated with the request for the data was archived to the archive storage according to an archive policy.

18. The non-transitory computer readable storage medium of claim 16 , wherein the view of data associated with the request for the data was deleted from a storage system according to a retention policy after the view of data associated with the request for the data was archived to the archive storage.

19. A system, comprising:

a processor; and

a memory coupled with the processor, wherein the memory is configured to provide the processor with instructions which when executed cause the processor to:

determine a view of data associated with a request for the data;

retrieve from an archive storage a plurality of archives of data corresponding to the determined view of data, wherein the plurality of archives of data includes at least a first archive of data and a second archive of data;

reconstitute a tree data structure associated with the view of data, wherein reconstituting the tree data structure associated with the view of data comprises reading a flat set of data corresponding to the first archive of data and using a file offset to read a portion of a second flat set of data corresponding to the second archive of data, wherein a data block associated with the flat set of data corresponding to the first archive of data includes the file offset to a data block associated with the flat set of data corresponding to the second archive of data;

use the reconstituted tree data structure to access the requested data that was stored in the second archive of data; and

provide the requested data.

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 Apr 9, 2020
From: GUTURI, VENKATA RANGA RADHANIKANTH; MAHATA, TUSHAR; YARLAGADDA, PRAVEEN KUMAR
To: COHESITY, INC.
Reel/Frame 052359/0531 →
Continuity (2)
Continuation 15689704 · Aug 29, 2017
Related Publication 20200233835A1 · Jul 23, 2020