IP Library Granted Patent US 11,327,834
Granted Patent B2
US 11,327,834 · App. 16/822,493 · Granted May 10, 2022

Efficient computation of parity data in storage system implementing data striping

Inventors: Zvi Schneider (Tel Aviv, IL); Amitai Alkalay (Kadima, IL); Assaf Natanzon (Tel Aviv, IL)
Assignee: EMC IP Holding Company LLC
G06F11/1068G06F3/064G06F3/0619G06F3/0688G06F3/0689G11C29/52
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,327,834
App. No.
16/822,493
Granted
May 10, 2022
Kind
B2
Abstract

In an information processing system including a set of data storage devices for storing data blocks arranged in respective columns on each data storage device and rows across the set of data storage devices to form at least one data stripe, and a set of parity storage devices for storing parity blocks computed via one or more parity operations based on the data blocks of the at least one data stripe, at least one of the data storage devices includes a processing device configured to: receive from the information processing system an instruction to perform at least a portion of a parity operation; perform the portion of the parity operation; and send a result of the performed portion of the parity operation to the information processing system, wherein the result is useable by the information processing system for performing another portion of the parity operation.

Claims (31)

1. An apparatus comprising:

at least one data storage device in an information processing system comprising a set of data storage devices, wherein the at least one data storage device comprises a processing device configured to:

receive an instruction from the information processing system to perform at least a portion of a parity operation;

perform the portion of the parity operation based at least in part on the instruction; and

send a result of the performed portion of the parity operation to the information processing system, wherein the result is useable by the information processing system for performing another portion of the parity operation.

2. The apparatus of claim 1 , wherein the portion of the parity operation performed by the processing device comprises performing a column parity operation.

3. The apparatus of claim 2 , wherein the column parity operation comprises performing an XOR operation on at least a portion of a column of data blocks stored in the at least one data storage device to generate column parity data.

4. The apparatus of claim 3 , wherein the column parity data is the result sent to the information processing system.

5. The apparatus of claim 4 , wherein the column parity data is combinable with other forms of parity data storable on at least one of a set of parity storage devices of the information processing system.

6. The apparatus of claim 5 , wherein the information processing system implements data striping and the column parity data is combinable with a diagonal parity data computed for at least one data stripe.

7. The apparatus of claim 1 , wherein the at least one data storage device is part of a Redundant Array of Independent Disks (RAID) storage system comprising the set of data storage devices and a set of parity storage devices.

8. The apparatus of claim 7 , wherein the number of data storage devices in the RAID storage system comprises a prime number k, and wherein a column of the RAID storage system comprises k−1 blocks.

9. The apparatus of claim 7 , wherein the RAID storage system implements RAID 6 with the number of data storage devices being k and the number of parity storage devices being n, where n is greater than one.

10. The apparatus of claim 1 , wherein the at least one data storage device comprises a solid state drive (SSD).

11. The apparatus of claim 10 , wherein the processing device comprises one or more of a central processing unit and a hardware accelerator internal to the SSD.

12. A method comprising:

receiving by a processing device of at least one data storage device of an information processing system comprising a set of data storage devices, an instruction from the information processing system to perform at least a portion of a parity operation;

performing by the processing device the portion of the parity operation in response to the instruction; and

sending a result of the performed portion of the parity operation from the at least one data storage device to the information processing system, wherein the result is useable by the information processing system for performing another portion of the parity operation.

13. The method of claim 12 , wherein the portion of the parity operation performed by the processing device comprises performing a column parity operation.

14. The method of claim 13 , wherein the column parity operation comprises performing an XOR operation on at least a portion of a column of data blocks stored in the at least one data storage device to generate column parity data.

15. The method of claim 14 , wherein the column parity data is the result sent to the information processing system.

16. The method of claim 15 , wherein the column parity data is combinable with other forms of parity data storable on at least one of a set of parity storage devices of the information processing system.

17. The method of claim 16 , wherein the information processing system implements data striping and the column parity data is combinable with diagonal parity data computed for the at least one data stripe.

18. The method of claim 12 , wherein the at least one data storage device is part of a Redundant Array of Independent Disks (RAID) storage system comprising the set of data storage devices and a set of parity storage devices.

19. The method of claim 11 , wherein the at least one data storage device comprises a solid state drive (SSD) and the processing device comprises one or more of a central processing unit and a hardware accelerator internal to the SSD.

20. An apparatus comprising:

a processing device operatively coupled to a set of data storage devices, wherein the processing device is configured to:

send an instruction to at least one data storage device to perform at least a portion of a parity operation;

receive a result of the performed portion of the parity operation from the at least one storage device; and

use the result for performing another portion of the parity operation.

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 (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 (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 (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/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 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 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 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 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 Mar 18, 2020
From: SCHNEIDER, ZVI; ALKALAY, AMITAI; NATANZON, ASSAF
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 052152/0870 →
Continuity (2)
Continuation 16049185 · Jul 30, 2018
Related Publication 20200218610A1 · Jul 9, 2020