IP Library Granted Patent US 11,681,677
Granted Patent B2
US 11,681,677 · App. 16/803,923 · Granted Jun 20, 2023

Geographically diverse data storage system employing a replication tree

Inventors: Mikhail Danilov (Saint Petersburg, RU); Yohannes Altaye (Dumfries, VA)
Assignee: EMC IP HOLDING COMPANY LLC
G06F16/2246G06F16/182G06F16/1858G06F16/24564G06F16/27
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,681,677
App. No.
16/803,923
Granted
Jun 20, 2023
Kind
B2
Abstract

A geographically diverse data storage system that can protect data via replication of data among relevant zones according to a determined replication topology is disclosed. The replication topology can be determined based on replication times between the relevant zones. In an aspect, a tree topology can provide advantages over a star topography. In an embodiment, a tree topology can be generated, or an existing topology can be modified, via selection of a next replication task(s) based on the replication times. In an aspect, the replication times can be determined from measurable characteristics of the geographically diverse data storage system. In some embodiments, the replications times can be based on historical measurements, time limited historical measurements, inferences from machine learning, etc. A determined topology can be ranked relative to other viable topologies based on criteria such as speed, monetary cost, computing resource usage, etc. Accordingly, a selected topology, or selected modification to a topology, can provide for improved replication that can provide protection for data stored in the geographically diverse data storage system.

Claims (39)

1. A system, comprising:

a processor; and

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

receiving an indication of replication times between pairs of zones comprised in a geographically diverse data storage system comprising a first zone, a second zone, and a third zone;

determining a first replication operation between the first zone and the second zone based on a first value of the replication times and adding the first zone and the second zone to a tree set;

determining a second replication operation between a zone of the tree set and the third zone based on a second value of the replication times and adding the third zone to the tree set;

selecting a preferred replication topology based on a ranking of the first replication operation and the second replication operation among other replication operations determined for the pairs of zones from the replication times, wherein the ranking is based on a monetary cost of replication, a speed of replication, a reliability of replication, and satisfaction of a customer requirement for replication of a data chunk between the pairs of zones, wherein the data chunk comprises data stored in an append-only format according to an order in which the data was received by the geographically diverse data storage system, and wherein the data chunk is sealed prior to replication, causing the data chunk to be immutable; and

replicating the data chunk among the pairs of zones according to the preferred replication topology, resulting in a replicated data chunk.

2. The system of claim 1 , wherein the first zone is located remotely from the second zone, and wherein the first zone is located remotely from the third zone.

3. The system of claim 1 , wherein the second zone is located remotely from the third zone.

4. The system of claim 1 , wherein the ranking is based, at least in part, on determining the first value of the replication times is lower than another value of the replication times.

5. The system of claim 1 , wherein the ranking is based, at least in part, on determining the first value of the replication times is the same as another value of the replication times, and is further based, at least in part, on determining that employing a zone corresponding to the first value results in shorter tree topology than employing another zone corresponding to the other value of the replication times.

6. The system of claim 1 , wherein the ranking is in response to a determining that a characteristic of the geographically diverse data storage system has transitioned a threshold value.

7. The system of claim 6 , wherein the threshold value is a replication time value of the replication times.

8. The system of claim 6 , wherein the threshold value is an amount of change in a replication time value of the replication times.

9. The system of claim 1 , wherein the operations further comprise iteratively determining another replication operation of the other replication operations, and wherein the other replication operation is between a zone of the tree set and another zone of the geographically diverse data storage system based on another value of the replication times and adding the other zone to the tree set.

10. The system of claim 1 , wherein the ranking of the replication operations excludes unavailable topology schemes.

11. The system of claim 1 , wherein the replicating the data chunk according to the preferred replication topology results in generating a protection set via replication of data chunks comprising the data chunk among zones comprised in the tree set.

12. The system of claim 9 , wherein the iteratively determining another replication operation between a zone of the tree set and another zone results in a third replication operation that occurs in parallel with the second replication operation.

13. A method, comprising:

performing, by a system comprising a processor, a first iteration of operations comprising:

in response to receiving, by the system, an indication of replication times between a pair of zones comprised in a geographically diverse data storage system comprising a first zone, a second zone, and a third zone, determining a first replication operation between the first zone and the second zone based on a first value of the replication times and adding the first zone and the second zone to a tree set;

determining, by the system, a second replication operation between a zone of the tree set and the third zone based on a second value of the replication times and adding the third zone to the tree set;

selecting, by the system, a preferred replication topology based on ranking viable replication topologies, wherein the ranking the viable replication topologies is based, at least in part, on the replication times, a monetary cost of replication, a reliability of replication, and satisfaction of a customer requirement for replicating a data chunk between pairs of zones, and wherein the preferred replication topology comprises the first replication operation and the second replication operation; and

initiating, by the system, a replication of the data chunk in accord with the preferred replication topology, wherein the data chunk comprises data stored in an append-only format according to an order in which the data was received by the geographically diverse data storage system, and wherein the data chunk becomes immutable by sealing the data chunk prior to performing the replication.

14. The method of claim 13 , wherein the operations further comprise:

in response to determining, by the system, that there is a relevant zone of the geographically diverse data storage system to be added to the tree set, iteratively determining at least another replication operation between a zone of the tree set and at least another zone of the geographically diverse data storage system based on at least another value of the replication times and adding at least the other zone to the tree set, resulting in in topology scheme of the viable topology schemes.

15. The method of claim 14 , wherein the iteratively determining at least the other replication operation results in a third replication operation that occurs in parallel with the second replication operation.

16. The method of claim 13 , wherein the determining the first replication operation results in the first replication operation being between remotely located zones.

17. A non-transitory machine-readable storage medium, comprising executable instructions that, when executed by a processor, facilitate performance of operations, comprising:

determining that an indication of replication times between a pair of zones comprised in a geographically diverse data storage system comprising a first zone, a second zone, and a third zone, satisfies a rule related to a threshold value;

determining a first replication operation between the first zone and the second zone based on a first value of the replication times and adding the first zone and the second zone to a tree set;

determining a second replication operation between a zone of the tree set and the third zone based on a second value of the replication times and adding the third zone to the tree set;

ranking viable replication topologies, wherein the ranking the viable replication topologies is based, at least in part, on the replication times, a monetary cost of replications, a reliability of replications, and satisfaction of a customer requirement for replicating a data chunk between pairs of zones, and wherein a selected replication topology, selected from the viable replication topologies, comprises the first replication operation and the second replication operation; and

applying the selected replication topology, resulting in generating a protection set via replication of the data chunk among zones comprised in the tree set based on replication operations comprised in the selected replication topology, wherein the data chunk comprises data stored in an append-only format according to an order in which the data was received by the geographically diverse data storage system, and wherein the data chunk is sealed prior to replication, thereby causing the data chunk to be immutable.

18. The non-transitory machine-readable storage medium of claim 17 , wherein the operations further comprise:

iteratively determining at least another replication operation between a zone of the tree set and at least another zone of the geographically diverse data storage system based on at least another value of the replication times and adding at least the other zone to the tree set.

19. The non-transitory machine-readable storage medium of claim 18 , wherein the iteratively determining at least the other replication operation results in a third replication operation that occurs in parallel with the second replication operation.

20. The non-transitory machine-readable storage medium of claim 17 , wherein the first zone is remotely located from the second zone.

Assignments (13)
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 (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 (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; 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 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 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 27, 2020
From: DANILOV, MIKHAIL; ALTAYE, YOHANNES
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 051956/0939 →
Cited By (1)
US 12,596,724