IP Library Granted Patent US 10,901,843
Granted Patent B2
US 10,901,843 · App. 16/432,680 · Granted Jan 26, 2021

Managing data storage

Inventors: Marc Cassano (Mendon, MA); Robert Foley (Clinton, MA); Daniel Cummins (Hudson, NJ); Socheavy Heng (Framingham, MA)
Assignee: EMC IP Holding Company LLC
G06F11/1076
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,901,843
App. No.
16/432,680
Granted
Jan 26, 2021
Kind
B2
Abstract

Disclosed herein are techniques for use in managing data storage. For example, in one embodiment, the techniques comprise determining a size of the write request. The size of the write request equating to half or more non-parity data portions in a full stripe of data but less than all non-parity data portions in the full stripe. The techniques comprise performing a process based on the size that includes reading a parity and one or more missing non-parity data portions in the full stripe, verifying the coherency of the missing non-parity data portions by comparing a checksum of the parity and a checksum of the missing non-parity data portions, determining a new parity based on the new data and the missing non-parity data portions, and writing, in response to verifying the coherency of the missing non-parity data portions, the new data and the new parity to a RAID group without writing the one or more missing non-parity data portions to the RAID group, wherein the new data and the new parity are written to the RAID group with a checksum.

Claims (14)

1. A computer-implemented method, comprising:

receiving a write request comprising new data to be written to a data storage system, wherein the data storage system comprises a plurality of data storage devices arranged in a redundant array of independent disks (RAID) group;

in response to receiving the write request, determining a size of the write request, wherein the size of the write request equates to half or more non-parity data portions in a full stripe of data but less than all of the non-parity data portions in the full stripe of data; and

based on the size of the write request, performing a process, comprising: reading a parity and one or more missing non-parity data portions in the full stripe of data; verifying the coherency of the one or more missing non-parity data portions by comparing a checksum of the parity and a checksum of the one or more missing non-parity data portions; determining a new parity based on the new data and the one or more missing non-parity data portions; and writing, in response to verifying the coherency of the missing non-parity data portions, the new data and the new parity to the RAID group in the data storage system without writing the one or more missing non-parity data portions to the RAID group in the data storage system, wherein the new data and the new parity are written to the RAID group with a checksum.

2. An apparatus, comprising:

memory; and

processing circuitry coupled to the memory, the memory storing instructions which, when executed by the processing circuitry, cause the processing circuitry to:

receive a write request comprising new data to be written to a data storage system, wherein the data storage system comprises a plurality of data storage devices arranged in a redundant array of independent disks (RAID) group;

in response to receiving the write request, determine a size of the write request, wherein the size of the write request equates to half or more non-parity data portions in a full stripe of data but less than all of the non-parity data portions in the full stripe of data; and

based on the size of the write request, perform a process, comprising: reading a parity and one or more missing non-parity data portions in the full stripe of data; verifying the coherency of the one or more missing non-parity data portions by comparing a checksum of the parity and a checksum of the one or more missing non-parity data portions; determining a new parity based on the new data and the one or more missing non-parity data portions; and writing, in response to verifying the coherency of the missing non-parity data portions, the new data and the new parity to the RAID group in the data storage system without writing the one or more missing non-parity data portions to the RAID group in the data storage system, wherein the new data and the new parity are written to the RAID group with a checksum.

3. A computer program product having a non-transitory computer readable medium which stores a set of instructions, the set of instructions, when carried out by processing circuitry, causing the processing circuitry to perform a method of:

receiving a write request comprising new data to be written to a data storage system, wherein the data storage system comprises a plurality of data storage devices arranged in a redundant array of independent disks (RAID) group;

in response to receiving the write request, determining a size of the write request, wherein the size of the write request equates to half or more non-parity data portions in a full stripe of data but less than all of the non-parity data portions in the full stripe of data; and

based on the size of the write request, performing a process, comprising: reading a parity and one or more missing non-parity data portions in the full stripe of data; verifying the coherency of the one or more missing non-parity data portions by comparing a checksum of the parity and a checksum of the one or more missing non-parity data portions; determining a new parity based on the new data and the one or more missing non-parity data portions; and writing, in response to verifying the coherency of the missing non-parity data portions, the new data and the new parity to the RAID group in the data storage system without writing the one or more missing non-parity data portions to the RAID group in the data storage system, wherein the new data and the new parity are written to the RAID group with a checksum.

Assignments (10)
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 (050724/0571) 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 060436/0088 →
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 050406 FRAME 421 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 058213/0825 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2020
From: CASSANO, MARC; FOLEY, ROBERT; CUMMINS, DANIEL; HENG, SOCHEAVY
To: EMC CORPORATION
Reel/Frame 054634/0083 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2020
From: EMC CORPORATION
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 054731/0614 →
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 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 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Oct 15, 2019
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 050724/0571 →
SECURITY AGREEMENT Recorded Sep 17, 2019
From: DELL PRODUCTS L.P.; EMC CORPORATION; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 050406/0421 →