IP Library Granted Patent US 11,740,808
Granted Patent B2
US 11,740,808 · App. 17/218,784 · Granted Aug 29, 2023

Making more active use of a secondary storage system

Inventors: Mohit Aron (Saratoga, 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 11,740,808
App. No.
17/218,784
Granted
Aug 29, 2023
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 (31)

1. A method, comprising:

receiving data backup parameters for backing up a primary system;

transferring data from the primary system to a secondary storage system; and

writing the data to a snapshot of a current view of the primary system, wherein the snapshot of the current view of the primary system includes a first tree data structure comprising a root node that is a copy of a root node associated with a snapshot of a previous view of the primary system, a first plurality of child nodes, and a first plurality of leaf nodes, wherein at least some of the first plurality of leaf nodes include corresponding pointers to a plurality of binary large objects, wherein a first binary large object of the plurality of binary large objects includes a second tree data structure that enables data associated with an object to which the first binary large object is associated to be located.

2. The method of claim 1 , wherein the data backup parameters include bandwidth limitations on obtaining data from the primary system.

3. The method of claim 1 , wherein the data backup parameters include a backup schedule that includes a frequency of performing a backup of the primary system.

4. The method of claim 1 , wherein the data backup parameters include an internet protocol address and credentials.

5. The method of claim 1 , wherein the snapshot of the current view corresponding to the primary system stores metadata needed to locate the written data.

6. The method of claim 1 , wherein the current view of the primary system and the previous view of the primary system correspond to different restore points of the primary system.

7. The method of claim 1 , wherein the current view of the primary system has an associated namespace.

8. The method of claim 1 , wherein the first binary large object of the plurality of binary large objects includes a node storing information associated with a brick.

9. The method of claim 8 , wherein the brick is comprised of one or more chunks.

10. The method of claim 9 , wherein each of the one or more chunks are associated with a corresponding chunk file identifier.

11. The method of claim 10 , wherein at least some of the data is written to a chunk file associated with the corresponding chunk file identifier.

12. The method of claim 1 , wherein writing the data to the snapshot of the current view includes generating the current view of the primary system.

13. The method of claim 12 , wherein generating the current view of the primary system includes copying the root node associated with the snapshot of the previous view of the primary system to be the root node for the first tree data structure of the current view of the primary system.

14. The method of claim 13 , wherein generating the current view of the primary system includes modifying one or more nodes to reference one or more new nodes instead of referencing one or more nodes associated with the previous view of the primary system.

15. The method of claim 1 , wherein one of the first plurality of leaf nodes is an index node that includes a reference to one of the plurality of binary large objects.

16. A computer program product embodied in a non-transitory computer readable medium and comprising computer instructions for:

receiving data backup parameters for backing up a primary system;

transferring data from the primary system to a secondary storage system; and

writing the data to a snapshot of a current view of the primary system, wherein the snapshot of the current view of the primary system includes a first tree data structure comprising a root node that is a copy of a root node associated with a snapshot of a previous view of the primary system, a first plurality of child nodes, and a first plurality of leaf nodes, wherein at least some the first plurality of leaf nodes include corresponding pointers to a plurality of binary large objects, wherein a first binary large object of the plurality of binary large objects includes a second tree data structure that enables data associated with an object to which the first binary large object is associated to be located.

17. The computer program product of claim 16 , wherein the first binary large object of the plurality of binary large objects includes a node storing information associated with a brick.

18. The computer program product of claim 17 , wherein the brick is comprised of one or more chunks, wherein each of the one or more chunks are associated with a corresponding chunk file identifier.

19. The computer program product of claim 18 , wherein at least some of the data is written to a chunk file associated with the corresponding chunk file identifier.

20. A system, comprising:

a memory; and

a processor coupled to the memory, wherein the processor:

receives data backup parameters for backing up a primary system;

transfers data from the primary system to a secondary storage system; and

writes the data to a snapshot of a current view of the primary system, wherein the snapshot of the current view of the primary system includes a first tree data structure comprising a root node that is a copy of a root node associated with a snapshot of a previous view of the primary system, a first plurality of child nodes, and a first plurality of leaf nodes, wherein at least some the first plurality of leaf nodes include corresponding pointers to a plurality of binary large objects, wherein a first binary large object of the plurality of binary large objects includes a second tree data structure that enables data associated with an object to which the first binary large object is associated to be located.

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 Jul 2, 2021
From: ARON, MOHIT; REDDY, VINAY
To: COHESITY, INC.
Reel/Frame 056745/0083 →
Continuity (5)
Continuation 16536148 · Aug 8, 2019
Continuation 16110110 · Aug 23, 2018
Continuation 15890053 · Feb 6, 2018
Continuation 14309869 · Jun 19, 2014
Related Publication 20210318816A1 · Oct 14, 2021