IP Library Granted Patent US 11,640,338
Granted Patent B2
US 11,640,338 · App. 17/198,060 · Granted May 2, 2023

Data recovery operations, such as recovery from modified network data management protocol data

Inventors: Duncan Alden Littlefield (Millstone Township, NJ); Vimal Kumar Nallathambi (Ocean Township, NJ); Girish Chanchlani (Lawrenceville, NJ)
Assignee: Commvault Systems, Inc.
G06F11/1453G06F3/065G06F3/067G06F3/0619G06F3/0641G06F3/0665G06F11/1469G06F11/1448G06F2201/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,640,338
App. No.
17/198,060
Granted
May 2, 2023
Kind
B2
Abstract

The systems and methods herein permit storage systems to correctly perform data recovery, such as direct access recovery, of Network Data Management Protocol (“NDMP”) backup data that was modified prior to being stored in secondary storage media, such as tape. The systems and methods permit NDMP backup data to be encrypted, compressed, deduplicated, and/or otherwise modified prior to storage. The systems and methods herein also permit a user to perform a precautionary snapshot of the current state of data (e.g., primary data) prior to reverting data to a previous state using point-in-time data.

Claims (49)

1. A computer-implemented method performed by computer hardware including one or more computer processors, the method comprising:

receiving a first request to revert first data to an earlier state based on a previously generated first point-in-time copy of the first data;

presenting a user interface in response to the first request;

determining that a second request has been received via the user interface to generate a second point-in-time copy of the first data at a current state;

in response to the second request, generating the second point-in-time copy of the first data at the current state;

further determining that the user interface indicates that future point-in-time copies of the first data are to be automatically generated when a subsequent request is received to revert the first data to an earlier state;

in response to the further determining, configuring at least one of the one or more computer processors to automatically generate, without further input from the user interface, a third point-in-time copy of the first data at a third state, wherein the third state is current at a time that the subsequent request is received, and wherein the third point-in-time copy is to be generated prior to reverting the first data according to the subsequent request; and

after generating the second point-in-time copy of the first data at the current state of the first data, reverting the first data to the earlier state based on the previously generated first point-in-time copy of the first data.

2. The computer-implemented method of claim 1 , wherein the first request to revert the first data is for an unmodified version of the first data formatted according to Network Data Management Protocol (NDMP), wherein generating the first point-in-time copy modified the first data from an NDMP format; and further comprising:

based on the first point-in-time copy, reverting the first data into the unmodified version of the first data formatted according to the NDMP format.

3. The computer-implemented method of claim 2 , wherein generating of the first point-in-time copy modified the first data from the NDMP format to one or more of: a deduplicated format, a compressed format, and an encrypted format.

4. The computer-implemented method of claim 2 , wherein the first request includes a logical offset and a logical length, which identify a location of the first data in an original NDMP data stream that was transmitted to an NDMP mover when generating of the first point-in-time copy; and

wherein reverting the first data into the unmodified version of the first data formatted according to the NDMP format comprises using the logical offset and the logical length to retrieve the first data.

5. The computer-implemented method of claim 1 further comprising:

presenting, via the user interface, a status of pending storage operations in a data storage system that generated the first point-in-time copy of the first data.

6. The computer-implemented method of claim 1 , wherein the first point-in-time copy is a backup copy.

7. The computer-implemented method of claim 1 , wherein the first point-in-time copy is a snapshot.

8. The computer-implemented method of claim 1 , wherein the first point-in-time copy is a backup copy is generated using one or more of: copy-on-write, redirect-on-write, split mirror, copy-on-write with background copy.

9. A system comprising one or more hardware data processors, wherein at least one of the one or more hardware data processors is configured to perform a plurality of operations comprising:

receiving a first request to revert first data to an earlier state based on a previously generated first point-in-time copy of the first data;

presenting a user interface in response to the first request;

determining that a second request has been received via the user interface to generate a second point-in-time copy of the first data at a current state;

in response to the second request, generating the second point-in-time copy of the first data at the current state;

further determining that the user interface indicates that future point-in-time copies of the first data are to be automatically generated when a subsequent request is received to revert the first data to an earlier state;

in response to the further determining, configuring the at least one of the one or more hardware data processors to automatically generate, without further input from the user interface, a third point-in-time copy of the first data at a third state, wherein the third state is current at a time that the subsequent request is received, and wherein the third point-in-time copy is to be generated prior to reverting the first data according to the subsequent request; and

after generating the second point-in-time copy of the first data at the current state of the first data, reverting the first data to the earlier state based on the previously generated first point-in-time copy of the first data.

10. The system of claim 9 , wherein the first request to revert the first data is for an unmodified version of the first data formatted according to Network Data Management Protocol (NDMP), wherein generating the first point-in-time copy modified the first data from an NDMP format; and wherein the plurality of operations further comprises:

based on the first point-in-time copy, reverting the first data into the unmodified version of the first data formatted according to the NDMP format.

11. The system of claim 10 , wherein generating of the first point-in-time copy modified the first data from the NDMP format to one or more of: a deduplicated format, a compressed format, and an encrypted format.

12. The system of claim 10 , wherein the first request includes a logical offset and a logical length, which identify a location of the first data in an original NDMP data stream that was transmitted to an NDMP mover when generating of the first point-in-time copy; and

wherein reverting the first data into the unmodified version of the first data formatted according to the NDMP format comprises using the logical offset and the logical length to retrieve the first data.

13. The system of claim 9 , wherein the plurality of operations further comprises:

presenting, via the user interface, a status of pending storage operations in a data storage system that generated the first point-in-time copy of the first data.

14. The system of claim 9 , wherein the first point-in-time copy is a backup copy.

15. The system of claim 9 , wherein the first point-in-time copy is a snapshot.

16. The system of claim 9 , wherein the first point-in-time copy is a backup copy is generated using one or more of: copy-on-write, redirect-on-write, split mirror, copy-on-write with background copy.

17. A non-transitory computer-readable medium, carrying instructions, which when executed by at least one hardware data processor, perform a plurality of operations, the plurality of operations comprising:

receiving a first request to revert first data to an earlier state based on a previously generated first point-in-time copy of the first data;

presenting a user interface in response to the first request;

determining that a second request has been received via the user interface to generate a second point-in-time copy of the first data at a current state;

in response to the second request, generating the second point-in-time copy of the first data at the current state;

further determining that the user interface indicates that future point-in-time copies of the first data are to be automatically generated when a subsequent request is received to revert the first data to an earlier state;

in response to the further determining, configuring the at least one hardware data processor to automatically generate, without further input from the user interface, a third point-in-time copy of the first data at a third state, wherein the third state is current at a time that the subsequent request is received, and wherein the third point-in-time copy is to be generated prior to reverting the first data according to the subsequent request; and

after generating the second point-in-time copy of the first data at the current state of the first data, reverting the first data to the earlier state based on the previously generated first point-in-time copy of the first data.

18. The non-transitory computer-readable medium of claim 17 , wherein the first request to revert the first data is for an unmodified version of the first data formatted according to Network Data Management Protocol (NDMP), wherein generating the first point-in-time copy modified the first data from an NDMP format; and wherein the plurality of operations further comprises:

based on the first point-in-time copy, reverting the first data into the unmodified version of the first data formatted according to the NDMP format.

19. The non-transitory computer-readable medium of claim 18 , wherein generating of the first point-in-time copy modified the first data from the NDMP format to one or more of: a deduplicated format, a compressed format, and an encrypted format.

20. The non-transitory computer-readable medium of claim 18 , wherein the first request includes a logical offset and a logical length, which identify a location of the first data in an original NDMP data stream that was transmitted to an NDMP mover when generating of the first point-in-time copy; and

wherein reverting the first data into the unmodified version of the first data formatted according to the NDMP format comprises using the logical offset and the logical length to retrieve the first data.

Assignments (3)
SUPPLEMENTAL CONFIRMATORY GRANT OF SECURITY INTEREST IN UNITED STATES PATENTS Recorded Apr 16, 2025
From: COMMVAULT SYSTEMS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 070864/0344 →
SECURITY INTEREST Recorded Dec 13, 2021
From: COMMVAULT SYSTEMS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 058496/0836 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 15, 2021
From: LITTLEFIELD, DUNCAN A.; NALLATHAMBI, VIMAL K.; CHANCHLANI, GIRISH
To: COMMVAULT SYSTEMS, INC.
Reel/Frame 055595/0313 →