IP Library Granted Patent US 11,507,279
Granted Patent B2
US 11,507,279 · App. 16/781,296 · Granted Nov 22, 2022

Data storage migration in replicated environment

Inventors: Mikhail Danilov (Saint Petersburg, RU); Yohannes Altaye (Dumfries, VA)
Assignee: EMC IP HOLDING COMPANY LLC
G06F3/0619G06F3/067G06F3/0647G06F3/0664G06F11/1004G06F11/1076G06F11/2023
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,507,279
App. No.
16/781,296
Granted
Nov 22, 2022
Kind
B2
Abstract

The described technology is generally directed towards replicating metadata representing a virtual data structure corresponding to replicated legacy data instead of the actual data for the data structure. Once virtual chunks are replicated to a remote, newer storage system, the corresponding legacy data is locally read into the virtual chunks to transform the virtual chunks into real data chunks of the remote newer storage system. A checksum can be replicated for the remote newer storage system to evaluate the consistency of the data. Efficient data storage migration is thus accomplished in a replicated environment based on relatively negligible replication traffic between two remote locations, while still assuring the consistency of migrated data.

Claims (33)

1. A system, comprising:

a processor in a second node cluster storage system, and

a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations, the operations comprising:

receiving, from a first node cluster storage system, metadata comprising information representing a virtual data structure corresponding to replicated data of a third data storage system coupled to the second node cluster storage system, wherein the metadata comprises first metadata, wherein the information comprises first information, wherein the virtual data structure is a first virtual data structure, and wherein the replicated data is first replicated data;

creating the virtual data structure based on the information;

converting the virtual data structure to a real data structure, comprising reading the replicated data from the third data storage system into actual storage space corresponding to the virtual data structure, wherein the real data structure is a first real data structure; and

sending second metadata comprising second information representing a second virtual data structure from the second data storage system to the first data storage system, wherein the second virtual data structure corresponds to second replicated data to be read into a second real data structure by the first data storage system.

2. The system of claim 1 , wherein the third data storage system comprises a legacy data storage system locally coupled to the second node cluster storage system.

3. The system of claim 1 , wherein the real data structure is, instead of the first real data structure, a second real data structure intended to be a replica of the first real data structure maintained at the first node cluster storage system, and wherein the operations further comprise verifying whether the second real data structure is consistent with the first real data structure.

4. The system of claim 3 , wherein the receiving the metadata further comprises receiving a first checksum corresponding to the first real data structure, and wherein the verifying whether the second real data structure is consistent with the first real data structure comprises determining a second checksum based on the second real data structure, and comparing the first checksum with the second checksum.

5. The system of claim 4 , wherein the comparing provides an indication that that the first checksum does not equal the second checksum, and in response to the indication, requesting actual data of the first real data structure from the first node cluster storage system, receiving the actual data, and writing the actual data to the second real data structure.

6. The system of claim 1 , wherein the real data structure comprises a data chunk.

7. The system of claim 1 , wherein the real data structure is protected via erasure encoding.

8. The system of claim 1 , wherein the first data storage system is coupled to a fourth data storage system that contains the second replicated data.

9. A method, comprising:

receiving, by a processor in a second node cluster storage system communicatively coupled via a first wide area network to a first node cluster storage system coupled via a first local area network to a first legacy storage system, information from the first node cluster storage system, the information representing a virtual data structure corresponding to replicated data maintained in the first legacy data storage system;

creating, by the processor, a virtual data structure based on the information;

attempting to read, by the processor via a second local area network different than the first local area network, data from a second legacy data storage system coupled to the first legacy data storage system, via a second wide area network, to create, at the second node cluster storage system, a real data structure corresponding to the virtual data structure; and

in response to a successful attempt to read the data, verifying, by the processor, whether the data in the real data structure is consistent with counterpart data maintained at the first node cluster storage system.

10. The method of claim 9 , wherein the attempting to read the data from the second legacy data storage system is successful, and wherein the verifying determines that the data in the real data structure is consistent with the counterpart data, and further comprising responding, by the processor, to requests for data maintained in the real data structure by accessing the data maintained in the real data structure.

11. The method of claim 9 , further comprising, receiving, by the processor, first verification data associated with the virtual data structure from the first cluster storage system, wherein the verifying whether the data in the real data structure is consistent with counterpart data maintained at the first node cluster storage system comprises evaluating the first verification data with second verification data based on the data in the real data structure.

12. The method of claim 9 , wherein the attempting to read the data from the second legacy data storage system is unsuccessful, and further comprising performing by the processor, a read failover to obtain the data.

13. The method of claim 9 , wherein the attempting to read the data from the second legacy data storage system is successful, wherein the verifying whether the data in the real data structure is consistent with counterpart data maintained at the first node cluster storage system determines that the data is inconsistent, and further comprising, requesting, by the processor, actual data for the real data structure from the first node cluster storage system, receiving the actual data, and storing, by the processor, the actual data in the real data structure of the second node cluster storage system in place of the inconsistent data.

14. The method of claim 9 , wherein the information comprises first information, wherein the virtual data structure is a first virtual data structure, wherein the data maintained in the second legacy data storage system is first legacy data, wherein the real data structure is a first real data structure, and further comprising, sending, by the processor via the first wide area network, second information representing a second virtual data structure from the second node cluster storage system to the first node cluster storage system, wherein the second virtual data structure corresponds to second legacy data to be read into a second real data structure by the first node cluster storage system, via the first local area network.

15. A non-transitory machine-readable medium, comprising executable instructions that, when executed by a processor of second node cluster storage system in a replicated storage environment, facilitate performance of operations, the operations comprising:

receiving information from a first node cluster storage system via a first wide area network connecting the first node cluster storage system and the second node cluster storage system, the information representing a virtual data structure corresponding to legacy data maintained in a legacy data storage system, wherein the legacy data storage system comprises a first portion and a second portion of the legacy data storage system, wherein the first portion and the second portion are connected via a second wide area network, and wherein the second portion of the legacy data storage system is locally coupled to the second node cluster storage system via a first local area network connecting the second portion of the legacy data storage system to the second node cluster storage system;

creating a virtual data structure based on the information; and

reading a copy of the legacy data from the second portion of the legacy data storage system into storage space allocated in the second node cluster storage system to provide a real data structure that maintains, in the second node cluster storage system, a replicated copy of the data.

16. The non-transitory machine-readable medium of claim 15 , wherein the operations further comprise receiving a request for object data, determining that the object data is maintained in the real data structure in the second node cluster storage system, reading the object data from the real data structure, and returning the object data in response to the request.

17. The non-transitory machine-readable medium of claim 15 , wherein the operations further comprise receiving a checksum in conjunction with the information from the first node cluster storage system, and using the checksum to verify the copy of the data in the real data structure.

18. The non-transitory machine-readable medium of claim 15 , wherein the information is first information, wherein the virtual data structure is a first virtual data structure, and wherein the operations further comprise creating a second virtual data structure corresponding to second legacy data maintained in the legacy data storage system, and sending second information representing the second virtual data structure to the first node cluster storage system via the first wide area network to facilitate a data migration operation.

19. The non-transitory machine-readable medium of claim 18 , wherein the legacy data is first legacy data, wherein the real data structure is a first real data structure, wherein the storage space is first storage space, and wherein the operations further comprise reading second legacy data from the legacy data storage system into the into second storage space corresponding to the second virtual data structure via a second local area network connecting the first portion of the legacy data storage system to the first node cluster storage system to provide a second real data structure.

20. The non-transitory machine-readable medium of claim 15 , wherein the real data structure is protected via erasure encoding.

Assignments (13)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0917) 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 IP HOLDING COMPANY LLC
Reel/Frame 060436/0509 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052852/0022) 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 IP HOLDING COMPANY LLC
Reel/Frame 060436/0582 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052851/0081) 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 IP HOLDING COMPANY LLC
Reel/Frame 060436/0441 →
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 (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 AT REEL 052771 FRAME 0906 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0298 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052852/0022 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC; THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0081 →
SECURITY INTEREST Recorded Jun 5, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052851/0917 →
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 May 28, 2020
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 052771/0906 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2020
From: DANILOV, MIKHAIL; ALTAYE, YOHANNES
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 051712/0834 →
Continuity (1)
Related Publication 20210240359A1 · Aug 5, 2021