IP Library Granted Patent US 10,929,311
Granted Patent B2
US 10,929,311 · App. 16/453,568 · Granted Feb 23, 2021

Stream level uninterrupted backup operation using data probe

Inventors: Mahesh Reddy A V (Bangalore, IN); Chetan Battal (Bangalore, IN); Mahantesh Ambaljeri (Bangaluru, IN); Swaroop Shankar DH (Bangalore, IN)
Assignee: EMC IP HOLDING COMPANY LLC
G06F12/12G06F11/1464G06F11/1469G06F12/0815G06F12/0866G06F12/0868G06F16/903G06F2212/28G06F2212/31
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,929,311
App. No.
16/453,568
Granted
Feb 23, 2021
Kind
B2
Abstract

Methods and systems for backing up data to a target device are described. According to some embodiments, the method receives a first set of data packets for backup, where the first set of data packets includes a multiplicity of data chunks. The method further captures footprints of the first set of data packets in a cache disk array. In response to receiving an acknowledgement from the cache disk array indicating the footprints have been captured, the method further initiates a write operation to write each data chunk of the first set of data packets to the target device. In response to receiving an acknowledgement indicating the data chunk is successfully written, the method further flushes the respective footprint of the data chunk from the cache disk array.

Claims (50)

1. A computer-implemented method for backing up data to a target device, comprising:

receiving a first set of data packets for backup, wherein the first set of data packets comprises a plurality of data chunks;

capturing footprints of the first set of data packets in a cache disk array installed on a client device;

in response to receiving an acknowledgement from the cache disk array indicating the footprints have been captured,

initiating a write operation to write each data chunk of the first set of data packets to the target device, and

in response to receiving an acknowledgement indicating the data chunk is successfully written, flushing the respective footprint of the data chunk from the cache disk array; and

in response to receiving an unexpected abort signal, communicating a freeze signal to the cache disk array to freeze the cache disk array at a point in time where a last data chunk was successfully written to the target device.

2. The method of claim 1 , wherein the cache disk array is used as a reference for the last data chunk that was successfully written to the target device.

3. The method of claim 1 , further comprising: in response to receiving a trigger for a next backup,

querying remaining footprints of the first set of data packets from the cache disk array, and

identifying the last data chunk that was successfully written based on the queried footprints.

4. The method of claim 3 , further comprising: in response to receiving the trigger for the next backup, initiating a subsequent write operation to write the identified last data chunk to the target device, and unfreezing the cache disk array.

5. The method of claim 4 , further comprising: when the backup of the first set of data packets is complete, retrieving a second set of data packets, and capturing footprints of the second set of data packets in the cache disk array.

6. The method of claim 1 , wherein initiating the write operation to write each data chunk of the first set of data packets to the target device comprises communicating a wait signal to a write latch.

7. The method of claim 1 , wherein the footprints of the first set of data packets include last byte information, logical address on a storage, sector information, and packet metadata information.

8. The method of claim 1 , further comprising: holding a second set of data packets while writing each data chunk of the first set of data packets to the target device.

9. A non-transitory machine-readable medium having instructions stored therein, which when executed by a processor, cause the processor to perform operations, the operations comprising:

receiving a first set of data packets for backup, wherein the first set of data packets comprises a plurality of data chunks;

capturing footprints of the first set of data packets in a cache disk array installed on a client device;

in response to receiving an acknowledgement from the cache disk array indicating the footprints have been captured,

initiating a write operation to write each data chunk of the first set of data packets to a target device, and

in response to receiving an acknowledgement indicating the data chunk is successfully written, flushing the respective footprint of the data chunk from the cache disk array; and

in response to receiving an unexpected abort signal, communicating a freeze signal to the cache disk array to freeze the cache disk array at a point in time where a last data chunk was successfully written to the target device.

10. The non-transitory machine-readable medium of claim 9 , wherein the cache disk array is used as a reference for the last data chunk that was successfully written to the target device.

11. The non-transitory machine-readable medium of claim 9 , wherein the operations further comprise: in response to receiving a trigger for a next backup,

querying remaining footprints of the first set of data packets from the cache disk array, and

identifying the last data chunk that was successfully written based on the queried footprints.

12. The non-transitory machine-readable medium of claim 11 , wherein the operations further comprise: in response to receiving the trigger for the next backup, initiating a subsequent write operation to write the identified last data chunk to the target device, and unfreezing the cache disk array.

13. The non-transitory machine-readable medium of claim 12 , wherein the operations further comprise: when the backup of the first set of data packets is complete, retrieving a second set of data packets, and capturing footprints of the second set of data packets in the cache disk array.

14. The non-transitory machine-readable medium of claim 9 , wherein initiating the write operation to write each data chunk of the first set of data packets to the target device comprises communicating a wait signal to a write latch.

15. The non-transitory machine-readable medium of claim 9 , wherein the footprints of the first set of data packets include last byte information, logical address on a storage, sector information, and packet metadata information.

16. The non-transitory machine-readable medium of claim 9 , wherein the operations further comprise: holding a second set of data packets while writing each data chunk of the first set of data packets to the target device.

17. A data processing system, comprising:

a processor; and

a memory coupled to the processor to store instructions, which when executed by the processor, cause the processor to perform operations, the operations comprising:

receiving a first set of data packets for backup, wherein the first set of data packets comprises a plurality of data chunks;

capturing footprints of the first set of data packets in a cache disk array installed on a client device;

in response to receiving an acknowledgement from the cache disk array indicating the footprints have been captured,

initiating a write operation to write each data chunk of the first set of data packets to a target device, and

in response to receiving an acknowledgement indicating the data chunk is successfully written, flushing the respective footprint of the data chunk from the cache disk array; and

in response to receiving an unexpected abort signal, communicating a freeze signal to the cache disk array to freeze the cache disk array at a point in time where a last data chunk was successfully written to the target device.

18. The data processing system of claim 17 , wherein the cache disk array is used as a reference for the last data chunk that was successfully written to the target device.

19. The data processing system of claim 17 , wherein the operations further comprise: in response to receiving a trigger for a next backup,

querying remaining footprints of the first set of data packets from the cache disk array, and

identifying the last data chunk that was successfully written based on the queried footprints.

20. The data processing system of claim 19 , wherein the operations further comprise: in response to receiving the trigger for the next backup, initiating a subsequent write operation to write the identified last data chunk to the target device, and unfreezing the cache disk array.

21. The data processing system of claim 20 , wherein the operations further comprise: when the backup of the first set of data packets is complete, retrieving a second set of data packets, and capturing footprints of the second set of data packets in the cache disk array.

22. The data processing system of claim 17 , wherein initiating the write operation to write each data chunk of the first set of data packets to the target device comprises communicating a wait signal to a write latch.

23. The data processing system of claim 17 , wherein the footprints of the first set of data packets include last byte information, logical address on a storage, sector information, and packet metadata information.

24. The data processing system of claim 17 , wherein the operations further comprise: holding a second set of data packets while writing each data chunk of the first set of data packets to the target device.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053311/0169) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060438/0742 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (050724/0571) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 060436/0088 →
RELEASE OF SECURITY INTEREST AT REEL 050406 FRAME 421 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
Reel/Frame 058213/0825 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 053311/0169 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 050724/0571 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050406/0421 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 26, 2019
From: REDDY A V, MAHESH; BATTAL, CHETAN; AMBALJERI, MAHANTESH; SHANKAR DH, SWAROOP
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 049599/0891 →