IP Library Granted Patent US 11,474,734
Granted Patent B1
US 11,474,734 · App. 17/307,558 · Granted Oct 18, 2022

Tracking data mirror differences

Inventors: Brian Lake (Edmonton, CA); Victor Salamon (Edmonton, CA)
Assignee: EMC IP Holding Company LLC
G06F3/065G06F3/0604G06F3/067G06F3/0614G06F3/0659
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,474,734
App. No.
17/307,558
Granted
Oct 18, 2022
Kind
B1
Abstract

Methods, apparatus, and processor-readable storage media for tracking data mirror differences are provided herein. An example computer-implemented method includes obtaining a request to start tracking data differences between a plurality of data mirror volumes of a storage system, wherein the storage system is configured to apply at least a first data tracking technique that tracks the data differences using one or more bitmap records and a second data tracking technique that tracks the data differences using or more journal records; selecting at least one of the first data tracking technique and the second data tracking technique using one or more selection criteria; and tracking the data differences in accordance with the selected at least one data tracking technique.

Claims (59)

1. A computer-implemented method comprising:

obtaining a request to start tracking data differences between a plurality of data mirror volumes of a storage system, wherein the storage system is configured to apply at least a first data tracking technique that tracks the data differences using one or more bitmap records and a second data tracking technique that tracks the data differences using or more journal records;

selecting at least one of the first data tracking technique and the second data tracking technique using one or more selection criteria; and

tracking the data differences in accordance with the selected at least one data tracking technique;

wherein the method is performed by at least one processing device comprising a hardware processor.

2. The computer-implemented method of claim 1 , wherein:

the first data tracking technique comprises a bitmap logging technique that stores the one or more bitmap records in one or more bitmap volumes; and

the second data tracking technique comprises a journal logging technique that stores the one or more journal records in one or more journal volumes.

3. The computer-implemented method of claim 2 , comprising at least one of:

using a first one of the bitmap volumes as a data mirror for at least a second one of the bitmap volumes; and

using a first one of the journal volumes as a data mirror for at least a second one of the journal volumes.

4. The computer-implemented method of claim 2 , wherein at least one of the bitmap volumes is stored in a different fault domain than at least one of the journal volumes.

5. The computer-implemented method of claim 4 , wherein a given fault domain corresponds to at least one of:

a particular one of multiple input-output nodes associated with the storage system;

a particular storage device associated with the storage system; and

a particular set of storage devices associated with the storage system.

6. The computer-implemented method of claim 1 , wherein the one or more selection criteria comprise at least one of:

an amount of storage available to at least to one of the first data tracking technique and the second data tracking technique;

a number of volumes available to at least one of the first data tracking technique and the second data tracking technique to track the data differences; and

a number of write operations that result in data differences between the plurality of data mirror volumes.

7. The computer-implemented method of claim 1 , comprising:

monitoring an amount of storage used by each of the first data tracking technique and the second data tracking technique.

8. The computer-implemented method of claim 1 , comprising:

providing a common interface for the first data tracking technique and the second data tracking technique to one or more input-output drivers of the storage system.

9. The computer-implemented method of claim 1 , wherein the request is obtained in response to losing access to at least one of the plurality of data mirror volumes.

10. The computer-implemented method of claim 9 , comprising:

in response to regaining access to the at least one of the plurality of data mirror volumes, synchronizing the at least one of the plurality of data mirror volumes based at least in part on the tracked data differences.

11. The computer-implemented method of claim 1 , wherein the tracking comprises:

automatically switching the selected at least one data tracking technique to a different one of the at least one of the first and second data tracking techniques based at least in part on the one or more selection criteria.

12. A non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device:

to obtain a request to start tracking data differences between a plurality of data mirror volumes of a storage system, wherein the storage system is configured to apply at least a first data tracking technique that tracks the data differences using one or more bitmap records and a second data tracking technique that tracks the data differences using or more journal records;

to select at least one of the first data tracking technique and the second data tracking technique using one or more selection criteria; and

to track the data differences in accordance with the selected at least one data tracking technique.

13. The non-transitory processor-readable storage medium of claim 12 , wherein:

the first data tracking technique comprises a bitmap logging technique that stores the one or more bitmap records in one or more bitmap volumes; and

the second data tracking technique comprises a journal logging technique that stores the one or more journal records in one or more journal volumes.

14. The non-transitory processor-readable storage medium of claim 12 , wherein the one or more selection criteria comprise at least one of:

an amount of storage available to at least to one of the first data tracking technique and the second data tracking technique;

a number of volumes available to at least one of the first data tracking technique and the second data tracking technique to track the data differences; and

a number of write operations that result in data differences between the plurality of data mirror volumes.

15. The non-transitory processor-readable storage medium of claim 12 , wherein the at least one processing device is further caused:

to monitor an amount of storage used by each of the first data tracking technique and the second data tracking technique.

16. The non-transitory processor-readable storage medium of claim 12 , wherein the at least one processing device is further caused:

to provide a common interface for the first data tracking technique and the second data tracking technique to one or more input-output drivers of the storage system.

17. The non-transitory processor-readable storage medium of claim 12 , wherein the request is obtained in response to losing access to at least one of the plurality of data mirror volumes, and wherein the at least one processing device is further caused:

in response to regaining access to the at least one of the plurality of data mirror volumes, to synchronize the at least one of the plurality of data mirror volumes based at least in part on the tracked data differences.

18. An apparatus comprising:

at least one processing device comprising a processor coupled to a memory;

the at least one processing device being configured:

to obtain a request to start tracking data differences between a plurality of data mirror volumes of a storage system, wherein the storage system is configured to apply at least a first data tracking technique that tracks the data differences using one or more bitmap records and a second data tracking technique that tracks the data differences using or more journal records;

to select at least one of the first data tracking technique and the second data tracking technique using one or more selection criteria; and

to track the data differences in accordance with the selected at least one data tracking technique.

19. The apparatus of claim 18 , wherein:

the first data tracking technique comprises a bitmap logging technique that stores the one or more bitmap records in one or more bitmap volumes; and

the second data tracking technique comprises a journal logging technique that stores the one or more journal records in one or more journal volumes.

20. The apparatus of claim 18 , wherein the one or more selection criteria comprise at least one of:

an amount of storage available to at least to one of the first data tracking technique and the second data tracking technique;

a number of volumes available to at least one of the first data tracking technique and the second data tracking technique to track the data differences; and

a number of write operations that result in data differences between the plurality of data mirror volumes.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (058014/0560) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0473 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057931/0392) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0382 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057758/0286) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 061654/0064 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 058014/0560 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057758/0286 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057931/0392 →
SECURITY AGREEMENT Recorded Oct 1, 2021
From: DELL PRODUCTS, L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 057682/0830 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 4, 2021
From: LAKE, BRIAN; SALAMON, VICTOR
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 056131/0176 →