IP Library Granted Patent US 10,754,845
Granted Patent B2
US 10,754,845 · App. 15/636,435 · Granted Aug 25, 2020

System and method for XOR chain

Inventors: Mikhail Danilov (Saint Petersburg, RU); Konstantin Buinov (Kirovsk, RU); Andrey Fomin (Vsevolozhsk, RU); Mikhail Malygin (Saint Petersburg, RU); Ivan Tchoub (Saint Petersburg, RU)
Assignee: EMC IP HOLDING COMPANY LLC
G06F16/2365G06F16/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 10,754,845
App. No.
15/636,435
Granted
Aug 25, 2020
Kind
B2
Abstract

One embodiment is related to a method for creating a redundancy data chunk for data protection with a chain topology, comprising: transmitting a data chunk of a first frontend zone of a data storage system to a second frontend zone of the data storage system; creating a redundancy data chunk at the second frontend zone of the data storage system based on the data chunk of the first frontend zone and a data chunk of the second frontend zone; passing the redundancy data chunk onto one or more subsequent frontend zones of the data storage system from the second frontend zone, wherein at each subsequent frontend zone the redundancy data chunk is updated based on the received redundancy data chunk and a data chunk of the respective subsequent frontend zone, and wherein the redundancy data chunk is passed through each subsequent frontend zone exactly once; and at a last subsequent frontend zone of the data storage system, forwarding the updated redundancy data chunk to a backend zone of the data storage system for final storage.

Claims (32)

1. A method for creating a redundancy data chunk for data protection with a chain topology, comprising:

transmitting a data chunk of a first frontend zone of a data storage system to a second frontend zone of the data storage system;

creating a redundancy data chunk at the second frontend zone of the data storage system based on the data chunk of the first frontend zone and a data chunk of the second frontend zone;

passing the redundancy data chunk onto one or more subsequent frontend zones of the data storage system from the second frontend zone, wherein at each subsequent frontend zone the redundancy data chunk is updated based on the received redundancy data chunk and a data chunk of the respective subsequent frontend zone, and wherein the redundancy data chunk is passed through each subsequent frontend zone exactly once; and

at a last subsequent frontend zone of the data storage system, forwarding the updated redundancy data chunk to a backend zone of the data storage system for final storage, wherein the backend zone is dedicated to storage of the redundancy data chunk generated based on an exclusive or (XOR) technique and does not host user data, and wherein the frontend and backend zones of the data storage system are geographically distributed.

2. The method of claim 1 , wherein the redundancy data chunk is an exclusive or (XOR) chunk.

3. The method of claim 2 , wherein the XOR chunk is updated at a particular frontend zone by performing a bitwise XOR operation on the received XOR chunk and a data chunk of the particular frontend zone.

4. The method of claim 1 , further comprising after the redundancy data chunk is stored in the backend zone, recovering a data chunk of a single failed frontend zone based on the redundancy data chunk and data chunks of healthy frontend zones.

5. The method of claim 4 , wherein during data recovery, the redundancy data chunk is passed through each healthy frontend zone exactly once.

6. The method of claim 5 , wherein at each healthy frontend zone, the respective frontend zone withdraws its data chunk from the redundancy data chunk.

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

transmitting a data chunk of a first frontend zone of a data storage system to a second frontend zone of the data storage system;

creating a redundancy data chunk at the second frontend zone of the data storage system based on the data chunk of the first frontend zone and a data chunk of the second frontend zone;

passing the redundancy data chunk onto one or more subsequent frontend zones of the data storage system from the second frontend zone, wherein at each subsequent frontend zone the redundancy data chunk is updated based on the received redundancy data chunk and a data chunk of the respective subsequent frontend zone, and wherein the redundancy data chunk is passed through each subsequent frontend zone exactly once; and

at a last subsequent frontend zone of the data storage system, forwarding the updated redundancy data chunk to a backend zone of the data storage system for final storage, wherein the backend zone is dedicated to storage of the redundancy data chunk generated based on an exclusive or (XOR) technique and does not host user data, and wherein the frontend and backend zones of the data storage system are geographically distributed.

8. The non-transitory machine-readable medium of claim 7 , wherein the redundancy data chunk is an exclusive or (XOR) chunk.

9. The non-transitory machine-readable medium of claim 8 , wherein the XOR chunk is updated at a particular frontend zone by performing a bitwise XOR operation on the received XOR chunk and a data chunk of the particular frontend zone.

10. The non-transitory machine-readable medium of claim 7 , wherein the operations further comprise after the redundancy data chunk is stored in the backend zone, recovering a data chunk of a single failed frontend zone based on the redundancy data chunk and data chunks of healthy frontend zones.

11. The non-transitory machine-readable medium of claim 10 , wherein during data recovery, the redundancy data chunk is passed through each healthy frontend zone exactly once.

12. The non-transitory machine-readable medium of claim 11 , wherein at each healthy frontend zone, the respective frontend zone withdraws its data chunk from the redundancy data chunk.

13. A data processing system, comprising:

a processor; and

a memory coupled to the processor storing instructions which, when executed by the processor, cause the processor to perform testing operations, the operations including

transmitting a data chunk of a first frontend zone of a data storage system to a second frontend zone of the data storage system;

creating a redundancy data chunk at the second frontend zone of the data storage system based on the data chunk of the first frontend zone and a data chunk of the second frontend zone;

passing the redundancy data chunk onto one or more subsequent frontend zones of the data storage system from the second frontend zone, wherein at each subsequent frontend zone the redundancy data chunk is updated based on the received redundancy data chunk and a data chunk of the respective subsequent frontend zone, and wherein the redundancy data chunk is passed through each subsequent frontend zone exactly once; and

at a last subsequent frontend zone of the data storage system, forwarding the updated redundancy data chunk to a backend zone of the data storage system for final storage, wherein the backend zone is dedicated to storage of the redundancy data chunk generated based on an exclusive or (XOR) technique and does not host user data, and wherein the frontend and backend zones of the data storage system are geographically distributed.

14. The data processing system of claim 13 , wherein the redundancy data chunk is an exclusive or (XOR) chunk.

15. The data processing system of claim 14 , wherein the XOR chunk is updated at a particular frontend zone by performing a bitwise XOR operation on the received XOR chunk and a data chunk of the particular frontend zone.

16. The data processing system of claim 13 , wherein the operations further comprise after the redundancy data chunk is stored in the backend zone, recovering a data chunk of a single failed frontend zone based on the redundancy data chunk and data chunks of healthy frontend zones.

17. The data processing system of claim 16 , wherein during data recovery, the redundancy data chunk is passed through each healthy frontend zone exactly once.

18. The data processing system of claim 17 , wherein at each healthy frontend zone, the respective frontend zone withdraws its data chunk from the redundancy data chunk.

Assignments (8)
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 (047648/0422) Recorded May 20, 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 060160/0862 →
RELEASE OF SECURITY INTEREST AT REEL 047648 FRAME 0346 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 058298/0510 →
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 Mar 21, 2019
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 049452/0223 →
PATENT SECURITY AGREEMENT (CREDIT) Recorded Oct 12, 2018
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047648/0346 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 12, 2018
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 047648/0422 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 28, 2017
From: DANILOV, MIKHAIL; BUINOV, KONSTANTIN; FOMIN, ANDREY; MALYGIN, MIKHAIL; TCHOUB, IVAN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 042854/0726 →