IP Library › Granted Patent US 10,678,759
Granted Patent B2
US 10,678,759 · App. 15/814,854 · Granted Jun 9, 2020

Systems and methods of providing data protection for hyper-converged infrastructures

Inventors: Biao Yan (Jinjiang Zone, CN); Shawn Xiao (Chongqing, CN); Eileen Chen (Sichuan, CN); Ming Wang (Chengdu, CN); Loretta Liao (Chengdu, CN)
Assignee: EMC IP Holding Company LLC
G06F16/184G06F11/0709G06F11/1464G06F11/2094G06F3/065
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,678,759
App. No.
15/814,854
Filed
Nov 16, 2017
Granted
Jun 9, 2020
Kind
B2
Art Unit
2168
USPC
707/634
Abstract

Techniques for providing data protection in high availability cluster environments. The techniques employ multiple layers of data protection, including a first layer that provides full data protection for a source storage system at a first-layer destination storage system, and a second layer of data protection that provides distributed data protection for the source storage system among a cluster of second-layer destination storage systems. By employing multiple layers of data protection for a source storage system in a high availability cluster environment, the techniques can provide (i) full data protection at the first-layer destination storage system and (ii) distributed data protection at the cluster of second-layer destination storage systems, reducing the chance of data loss due to failure of the source storage system and/or the first-layer destination storage system, and eliminating a data bottleneck from the first-layer destination storage system to the cluster of second-layer destination storage systems.

Claims (69)

1. A method of providing data protection in a high availability cluster network environment, comprising:

providing a source storage system, a first-layer destination storage system in a first layer of destination storage, and a cluster of second-layer destination storage systems in a second layer of destination storage, the source storage system storing data including a plurality of data slices, the first-layer destination storage system storing a replica of the data including the plurality of data slices to provide full protection of the data at the first-layer destination storage system, and the cluster of second-layer destination storage systems storing replicas of the data including the plurality of data slices respectively distributed among the second-layer destination storage systems to provide distributed protection of the data at the respective second-layer destination storage systems;

in response to the source storage system becoming inoperative:

promoting the first-layer destination storage system to a role of the source storage system;

regaining the full protection of the data by promoting a chosen one of the second-layer destination storage systems in the cluster to a role of the first-layer destination storage system; and

providing the distributed protection of the data at remaining ones of the respective second-layer destination storage systems;

obtaining a status of each respective second-layer destination storage system from among the second-layer destination storage systems in the cluster, the status corresponding to one or more of a role, a health status, and a load status of the respective second-layer destination storage system; and

choosing the chosen one of the second-layer destination storage systems in the cluster for the role of first-layer destination storage system based on the status of the chosen one of the second-layer destination storage systems.

2. The method of claim 1 further comprising:

replicating the data including the plurality of data slices for storage on the first-layer destination storage system; and

storing the replica of the data including the plurality of data slices on the first-layer destination storage system.

3. The method of claim 1 further comprising:

replicating the data including the plurality of data slices for storage on the second-layer destination storage systems; and

slicing the replicated data to obtain the replicas of the plurality of data slices.

4. The method of claim 3 further comprising:

distributing the replicas of the plurality of data slices among the respective second-layer destination storage systems; and

storing the replicas of the plurality of data slices respectively distributed among the second-layer destination storage systems.

5. The method of claim 1 further comprising:

collecting data slices from the remaining ones of the second-layer destination storage systems in the cluster;

providing the collected data slices to the chosen one of the second-layer destination storage systems in the role of first-layer destination storage system to replicate the data including the plurality of data slices; and

storing the replicated data including the plurality of data slices on the chosen one of the second-layer destination storage systems.

6. A method of providing data protection in a high availability cluster network environment, comprising:

providing a source storage system, a first-layer destination storage system in a first layer of destination storage, and a cluster of second-layer destination storage systems in a second layer of destination storage, the source storage system storing data including a plurality of data slices, the first-layer destination storage system storing a replica of the data including the plurality of data slices to provide full protection of the data at the first-layer destination storage system, and the cluster of second-layer destination storage systems storing replicas of the data including the plurality of data slices respectively distributed among the second-layer destination storage systems to provide distributed protection of the data at the respective second-layer destination storage systems;

in response to each of the source storage system and the first-layer destination storage system becoming inoperative:

promoting a chosen first one of the second-layer destination storage systems in the cluster to a role of the source storage system;

regaining the full protection of the data by promoting a chosen second one of the second-layer destination storage systems in the cluster to a role of the first-layer destination storage system; and

providing the distributed protection of the data at remaining ones of the respective second-layer destination storage systems;

obtaining a status of each respective second-layer destination storage system from among the second-layer destination storage systems in the cluster, the status corresponding to one or more of a role, a health status, and a load status of the respective second-layer destination storage system;

choosing the chosen first one of the second-layer destination storage systems in the cluster for the role of source storage system based on the status of the chosen first one of the second-layer destination storage systems; and

choosing the chosen second one of the second-layer destination storage systems in the cluster for the role of first-layer destination storage system based on the status of the chosen second one of the second-layer destination storage systems.

7. The method of claim 6 further comprising:

collecting data slices from the remaining ones of the second-layer destination storage systems in the cluster;

providing the collected data slices to the chosen first one of the second-layer destination storage systems in the role of source storage system to replicate the data including the plurality of data slices; and

storing the replicated data including the plurality of data slices on the chosen first one of the second-layer destination storage systems.

8. The method of claim 7 further comprising:

collecting further data slices from the remaining ones of the second-layer destination storage systems in the cluster;

providing the collected further data slices to the chosen second one of the second-layer destination storage systems in the role of first-layer destination storage system to replicate the data including the plurality of data slices; and

storing the replicated data including the plurality of data slices on the chosen second one of the second-layer destination storage systems.

9. A system for providing data protection in a high availability cluster network environment, comprising:

a source storage system, the source storage system including one or more storage devices configured to store data including a plurality of data slices;

a first-layer destination storage system in a first layer of destination storage, the first-layer destination storage system including one or more storage devices configured to store a replica of the data including the plurality of data slices to provide full protection of the data at the first-layer destination storage system; and

a cluster of second-layer destination storage systems in a second layer of destination storage, each of the cluster of second-layer destination storage systems including one or more storage devices configured to store replicas of the data including the plurality of data slices respectively distributed among the second-layer destination storage systems to provide distributed protection of the data at the respective second-layer destination storage systems,

wherein the first-layer destination storage system includes processing circuitry having an associated memory, and each of the second-layer destination storage systems includes processing circuitry having an associated memory, and

wherein the processing circuitry of the first-layer destination storage system and the processing circuitries of the respective second-layer destination storage systems are configured to execute, in concert, program instructions out of their respective associated memories:

to detect the source storage system becoming inoperative;

having detected the source storage system becoming inoperative, to promote the first-layer destination storage system to a role of the source storage system;

having promoted the first-layer destination storage system to the role of the source storage system, to regain the full protection of the data by promoting a chosen one of the second-layer destination storage systems in the cluster to a role of the first-layer destination storage system;

to provide the distributed protection of the data at remaining ones of the respective second-layer destination storage systems;

to obtain a status of each respective second-layer destination storage system from among the second-layer destination storage systems in the cluster, the status corresponding to one or more of a role, a health status, and a load status of the respective second-layer destination storage system; and

to choose the chosen one of the second-layer destination storage systems in the cluster for the role of first-layer destination storage system based on the status of the chosen one of the second-layer destination storage systems.

10. The system of claim 9 wherein the processing circuitry of the first-layer destination storage system is further configured to execute program instructions out of its associated memory to replicate the data including the plurality of data slices for storage on the second-layer destination storage systems, and to slice the replicated data to obtain the replicas of the plurality of data slices.

11. The system of claim 10 wherein the processing circuitry of the first-layer destination storage system is further configured to execute program instructions out of its associated memory to distribute the replicas of the plurality of data slices among the respective second-layer destination storage systems in the cluster.

12. The system of claim 11 wherein the processing circuitries of the respective second-layer destination storage systems are further configured to execute program instructions out of their associated memories to store the replicas of the plurality of data slices respectively distributed among the second-layer destination storage systems.

13. The system of claim 9 wherein the processing circuitry of the first-layer destination storage system and the processing circuitries of the respective second-layer destination storage systems are further configured to execute, in concert, program instructions out of their respective associated memories to collect data slices from the remaining ones of the second-layer destination storage systems in the cluster, and to provide the collected data slices to the chosen one of the second-layer destination storage systems in the role of first-layer destination storage system to replicate the data including the plurality of data slices.

14. The system of claim 13 wherein the processing circuitry of the chosen one of the second-layer destination storage systems is further configured to execute program instructions out of its associated memory to store the replicated data including the plurality of data slices.

15. A computer program product having a non-transitory computer readable medium that stores a set of instructions that, when carried out by computerized circuitry, cause the computerized circuitry to perform a method of:

storing data including a plurality of data slices on a source storage system;

storing a replica of the data including the plurality of data slices on a first-layer destination storage system in a first layer of destination storage to provide full protection of the data at the first-layer destination storage system;

distributing replicas of the data including the plurality of data slices among a cluster of second-layer destination storage systems in a second layer of destination storage to provide distributed protection of the data at the respective second-layer destination storage systems;

storing the distributed replicas of the plurality of data slices on the respective second-layer destination storage systems in the second layer of destination storage; and

operating the first-layer destination storage system and the cluster of second-layer destination storage systems in concert:

to detect the source storage system becoming inoperative;

having detected the source storage system becoming inoperative, to promote the first-layer destination storage system to a role of the source storage system;

having promoted the first-layer destination storage system to the role of the source storage system, to regain the full protection of the data by promoting a chosen one of the second-layer destination storage systems in the cluster to a role of the first-layer destination storage system; and

to provide the distributed protection of the data at remaining ones of the respective second-layer destination storage systems,

wherein the operating of the first-layer destination storage system and the cluster of second-layer destination storage systems in concert includes:

obtaining a status of each respective second-layer destination storage system from among the second-layer destination storage systems in the cluster, the status corresponding to one or more of a role, a health status, and a load status of the respective second-layer destination storage system; and

choosing the chosen one of the second-layer destination storage systems in the cluster for the role of first-layer destination storage system based on the status of the chosen one of the second-layer destination storage systems.

16. The method of claim 15 wherein the operating of the first-layer destination storage system and the cluster of second-layer destination storage systems in concert further includes collecting data slices from remaining ones of the second-layer destination storage systems in the cluster, and providing the collected data slices to the chosen one of the second-layer destination storage systems in the role of first-layer destination storage system to replicate the data including the plurality of data slices.

Assignments (5)
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 050405 FRAME 0534 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058001/0001 →
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 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050405/0534 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 18, 2017
From: YAN, BIAO; XIAO, SHAWN; CHEN, EILEEN; WANG, MING; LIAO, LORETTA
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 044419/0583 →
Priority Claims (1)
CN 2017 1 1050097 · Oct 31, 2017 · national
Continuity (1)
Related Publication 20190129979A1 · May 2, 2019