IP Library Granted Patent US 11,093,329
Granted Patent B1
US 11,093,329 · App. 16/832,752 · Granted Aug 17, 2021

RAID proxy storage-device-assisted data update system

Inventors: Gary Benedict Kotzur (Austin, TX); William Emmett Lynn (Round Rock, TX); Kevin Thomas Marks (Georgetown, TX); Chandrashekar Nelogal (Round Rock, TX); James Peter Giannoules (Round Rock, TX); Austin Patrick Bolen (Austin, TX)
Assignee: Dell Products L.P.
G06F11/1076G06F3/0619G06F3/0659G06F3/0689
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,093,329
App. No.
16/832,752
Granted
Aug 17, 2021
Kind
B1
Abstract

A RAID proxy storage-device-assisted data update system includes a RAID parity data storage device and a first RAID primary data storage device without storage-device-assisted data update functionality, and a second RAID primary data storage device with storage-device-assisted data update functionality. The second RAID primary data storage device receives a command that identifies updated primary data for the first RAID primary data storage device and, in response, retrieves the updated primary data, current primary data from the first RAID primary data storage device, and current parity data from the RAID primary parity data storage device. The second RAID primary data storage device performs an XOR operation using the updated primary data, the current primary data, and the current parity data to generate updated parity data, transmits the updated primary data to the first RAID primary data storage device, and transmits the updated parity data to the RAID parity data storage device.

Claims (58)

1. A Redundant Array of Independent Disks (RAID) proxy storage-device-assisted data update system, comprising:

a Redundant Array of Independent Disks (RAID) parity data storage device that does not include storage-device-assisted data update functionality;

a first RAID primary data storage device that does not include storage-device-assisted data update functionality; and

a second RAID primary data storage device that includes storage-device-assisted data update functionality, and that is configured to:

receive a primary data update command that identifies updated primary data on a host system for storage on the first RAID primary data storage device;

retrieve the updated primary data from the host system;

retrieve current primary data from the first RAID primary data storage device;

retrieve current parity data from the RAID primary parity data storage device;

perform an XOR operation using the updated primary data, the current primary data, and the current parity data to generate updated parity data;

transmit the updated primary data to the first RAID primary data storage device; and

transmit the updated parity data to the RAID parity data storage device.

2. The system of claim 1 , wherein the retrieving the updated primary data from the host system includes:

performing a write operation to write the updated primary data from the host system to a buffer subsystem in the second RAID primary data storage device.

3. The system of claim 1 , wherein the retrieving the current primary data from the first RAID primary data storage device includes:

performing a write operation to write the current primary data from the first RAID primary data storage device to a buffer subsystem in the second RAID primary data storage device.

4. The system of claim 1 , wherein the retrieving the current parity data from the RAID parity data storage device includes:

performing a write operation to write the current parity data from the RAID parity data storage device to a buffer subsystem in the second RAID primary data storage device.

5. The system of claim 1 , wherein the second RAID primary data storage device is configured to:

store the updated parity data in a buffer subsystem in the second RAID primary data storage device prior to providing the updated parity data on the RAID parity data storage device.

6. The system of claim 1 , wherein at least a portion of the transmitting the updated primary data to the first RAID primary data storage device and at least a portion of the transmitting the updated parity data to the RAID parity data storage device is performed at the same time.

7. The system of claim 1 , wherein the second RAID primary data storage device is provided by a Non-Volatile Memory Express (NVMe) storage device.

8. An Information Handling System (IHS), comprising:

a processing system; and

a memory system that is coupled to the processing system and that includes instructions that, when executed by the processing system, cause the processing system to provide a Redundant Array of Independent Disks (RAID) proxy storage-device-assisted data update engine that is configured to:

receive a primary data update command that identifies updated primary data on a host system for storage on a RAID primary data storage device that does not include storage-device-assisted data update functionality;

retrieve the updated primary data from the host system;

retrieve current primary data from the RAID primary data storage device;

retrieve current parity data from a RAID parity data storage device that does not include storage-device-assisted data update functionality;

perform an XOR operation using the updated primary data, the current primary data, and the current parity data to generate updated parity data;

transmit the updated primary data to the first RAID primary data storage device; and

transmit the updated parity data to the RAID parity data storage device.

9. The IHS of claim 8 , wherein the retrieving the updated primary data from the host system includes:

performing a write operation to write the updated primary data from the host system to a buffer subsystem that is connected to the processing system.

10. The IHS of claim 8 , wherein the retrieving the current primary data from the RAID primary data storage device includes:

performing a write operation to write the current primary data from the RAID primary data storage device to a buffer subsystem that is connected to the processing system.

11. The IHS of claim 8 , wherein the retrieving the current parity data from the RAID parity data storage device includes:

performing a write operation to write the current parity data from the RAID parity data storage device to a buffer subsystem that is connected to the processing system.

12. The IHS of claim 8 , wherein the RAID proxy storage-device-assisted data update engine is configured to:

store the updated parity data in a buffer subsystem that is connected to the processing system prior to providing the updated parity data on the RAID parity data storage device.

13. The IHS of claim 8 , wherein at least a portion of the transmitting the updated primary data to the RAID primary data storage device and at least a portion of the transmitting the updated parity data to the RAID parity data storage device is performed at the same time.

14. A method for Redundant Array of Independent Disks (RAID) proxy storage-device-assisted data updates, comprising:

receiving, by a first Redundant Array of Independent Disks (RAID) primary data storage device, a primary data update command that identifies updated primary data on a host system for storage on a second RAID primary data storage device that does not include storage-device-assisted data update functionality;

retrieving, by the first RAID primary data storage device, the updated primary data from the host system;

retrieving, by the first RAID primary data storage device, current primary data from the RAID primary data storage device;

retrieving, by the first RAID primary data storage device, current parity data from a RAID parity data storage device that does not include storage-device-assisted data update functionality;

performing, by the first RAID primary data storage device, an XOR operation using the updated primary data, the current primary data, and the current parity data to generate updated parity data;

transmitting, by the first RAID primary data storage device, the updated primary data to the second RAID primary data storage device; and

transmitting, by the first RAID primary data storage device, the updated parity data to the RAID parity data storage device.

15. The method of claim 14 , wherein the retrieving the updated primary data from the host system includes:

performing a write operation to write the updated primary data from the host system to a buffer subsystem in the first RAID primary data storage device.

16. The method of claim 14 , wherein the retrieving the current primary data from the second RAID primary data storage device includes:

performing a write operation to write the current primary data from the second RAID primary data storage device to a buffer subsystem in the first RAID primary data storage device.

17. The method of claim 14 , wherein the retrieving the current parity data from the RAID parity data storage device includes:

performing a write operation to write the current parity data from the RAID parity data storage device to a buffer subsystem in the first RAID primary data storage device.

18. The method of claim 14 , further comprising:

storing, by the first RAID primary data storage device, the updated parity data in a buffer subsystem in the first RAID primary data storage device prior to providing the updated parity data on the RAID parity data storage device.

19. The method of claim 14 , wherein at least a portion of the transmitting the updated primary data to the second RAID primary data storage device and at least a portion of the transmitting the updated parity data to the RAID parity data storage device is performed at the same time.

20. The method of claim 14 , wherein the first RAID primary data storage device is provided by a Non-Volatile Memory Express (NVMe) storage device.

Assignments (11)
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 (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 052852/0022 →
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; 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 27, 2020
From: KOTZUR, GARY BENEDICT; LYNN, WILLIAM EMMETT; MARKS, KEVIN THOMAS; NELOGAL, CHANDRASHEKAR; GIANNOULES, JAMES PETER; BOLEN, AUSTIN PATRICK
To: DELL PRODUCTS L.P.
Reel/Frame 052247/0502 →
Cited By (1)
US 12,282,664