IP Library Granted Patent US 10,416,911
Granted Patent B2
US 10,416,911 · App. 16/110,110 · Granted Sep 17, 2019

Making more active use of a secondary storage system

Inventors: Mohit Aron (Los Altos, CA); Vinay Reddy (San Jose, CA)
Assignee: Cohesity, Inc.
G06F3/0626G06F3/065G06F3/067G06F3/0617G06F11/1446G06F11/1448G06F11/1451G06F11/1456G06F11/20H05K999/99G06F2201/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 10,416,911
App. No.
16/110,110
Granted
Sep 17, 2019
Kind
B2
Abstract

Techniques are disclosed which allow a secondary storage system to provide data to non-production workloads in conjunction with performing data backup and protection tasks. As disclosed, a secondary storage system exposes backup data stored by the secondary storage system to other workloads, such as test and development applications, data analytics, etc. These non-production workloads can run at the same time the secondary storage system provides backup services to a primary storage system. This consolidation eliminates the need for an enterprise to deploy separate storage clusters for analytics, test and development applications, etc. and eliminates unnecessary copies of data.

Claims (39)

1. A system, comprising:

a processor configured to:

obtain a tree associated with requested data, wherein the tree associated with requested data corresponds to a state of data in a primary storage system at a given point in time;

traverse the tree to identify an inode associated with the requested data;

determine that a size of data attached to the inode is greater than or equal to a size limit, wherein the inode includes a reference to a binary large object;

search the binary large object to locate the requested data, wherein the binary large object is a tree structure that includes information about a location of the requested data; and

provide the requested data; and

a memory coupled to the processor and configured to provide the processor with instructions.

2. The system of claim 1 , wherein the processor is further configured to receive a request for the requested data, wherein the requested data is stored on a secondary storage system.

3. The system of claim 1 , wherein the processor is further configured to determine that the size of data attached to the inode is less than the size limit.

4. The system of claim 3 , wherein the processor is further configured to:

traverse the tree to a node of the tree storing the inode, wherein the node stores the requested data in the event the size of the data is less than the size limit; and

provide the requested data.

5. The system of claim 4 , wherein the requested data is stored as a value of a key-value pair.

6. The system of claim 1 , wherein the processor is further configured to obtain the binary large object.

7. The system of claim 1 , wherein the binary large object includes a node storing a brick.

8. The system of claim 7 , wherein the brick is comprised of one or more chunks.

9. The system of claim 8 , wherein the processor is further configured to locate a chunk of the one or more chunks associated with the requested data.

10. The system of claim 9 , wherein the processor is further configured to obtain a chunk identifier associated with the located chunk.

11. The system of claim 10 , wherein the processor is further configured to use the chunk identifier to locate the requested data.

12. The system of claim 1 , wherein the tree is comprised of a root node, a plurality of intermediate nodes, and a plurality of leaf nodes.

13. A method, comprising:

obtaining a tree associated with requested data, wherein the tree associated with requested data corresponds to a state of data in a primary storage system at a given point in time;

traversing the tree to identify an inode associated with the requested data;

determining that a size of data attached to the inode is greater than or equal to a size limit, wherein the inode includes a reference to a binary large object;

searching the binary large object to locate the requested data, wherein the binary large object is a tree structure that includes information about a location of the requested data; and

provide the requested data.

14. The method of claim 13 , further comprising receiving a request for the requested data, wherein the requested data is stored on a secondary storage system.

15. The method of claim 13 , further comprising obtaining the binary large object.

16. The method of claim 15 , wherein the binary large object includes a node storing a brick comprised of one or more chunks.

17. The method of claim 16 , further comprising locating a chunk of the one or more chunks associated with the requested data.

18. The method of claim 17 , further comprising obtaining a chunk identifier associated with the located chunk.

19. The method of claim 18 , further comprising using the chunk identifier to locate the requested data.

20. A computer program product, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

obtaining a tree associated with requested data, wherein the tree associated with requested data corresponds to a state of data in a primary storage system at a given point in time;

traversing the tree to identify an inode associated with the requested data;

determining that a size of data attached to the inode is greater than or equal to a size limit, wherein the inode includes a reference to a binary large object;

searching the binary large object to locate the requested data, wherein the binary large object is a tree structure that includes information about a location of the requested 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 Feb 6, 2019
From: ARON, MOHIT; REDDY, VINAY
To: COHESITY, INC.
Reel/Frame 048254/0352 →
Continuity (3)
Continuation 15890053 · Feb 6, 2018
Continuation 14309869 · Jun 19, 2014
Related Publication 20180364932A1 · Dec 20, 2018
Cited By (1)
US 12,619,501