IP Library Granted Patent US 11,681,459
Granted Patent B2
US 11,681,459 · App. 17/238,408 · Granted Jun 20, 2023

System and method for minimizing write-amplification in log-structured writes

Inventors: Vamsi K. Vankamamidi (Hopkinton, MA); Amitai Alkalay (Kadima, IL); Shuyu Lee (Acton, MA)
Assignee: EMC IP Holding Company, LLC
G06F3/0655G06F3/0604G06F3/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,681,459
App. No.
17/238,408
Filed
Apr 23, 2021
Granted
Jun 20, 2023
Kind
B2
Art Unit
2139
USPC
711/154
Abstract

A method, computer program product, and computer system for submitting, by a computing device, a write for a write-request equal to a size of valid data in a segment. The write-request may be decomposed into RAID elements and corresponding parity stripe elements. Parity for RAID stripes may be calculated using only valid RAID elements of the RAID elements. A write for all the valid RAID elements and the corresponding parity stripe elements may be issued. An unmap command may be issued to at least a portion of the segment that is invalid.

Claims (29)

1. A computer-implemented method comprising:

submitting, by a computing device, a write for a write-request equal to a size of valid data in a segment;

decomposing the write-request into RAID elements and corresponding parity stripe elements;

calculating parity for RAID stripes using only valid RAID elements of the RAID elements;

issuing a write for all the valid RAID elements and the corresponding parity stripe elements; and

based at least in part on the calculation of the parity for the RAID stripes using only the valid RAID elements of the RAID elements, issuing an unmap command to at least a portion of the segment that is invalid resulting in returning zeros on subsequent reads of the RAID elements and corresponding parity stripe elements that are invalid in the segment without writing the zeros.

2. The computer-implemented method of claim 1 wherein the RAID elements include sub-RAID elements.

3. The computer-implemented method of claim 1 wherein at least the portion of the segment includes RAID elements that are invalid in the segment.

4. The computer-implemented method of claim 3 wherein at least the portion of the segment further includes corresponding parity stripe elements that are invalid in the segment.

5. The computer-implemented method of claim 1 wherein the segment is parity protected using one of RAID-5 and RAID-6.

6. A computer program product residing on a non-transitory computer readable storage medium having a plurality of instructions stored thereon which, when executed across one or more processors, causes at least a portion of the one or more processors to perform operations comprising:

submitting a write for a write-request equal to a size of valid data in a segment;

decomposing the write-request into RAID elements and corresponding parity stripe elements;

calculating parity for RAID stripes using only valid RAID elements of the RAID elements;

issuing a write for all the valid RAID elements and the corresponding parity stripe elements; and

based at least in part on the calculation of the parity for the RAID stripes using only the valid RAID elements of the RAID elements, issuing an unmap command to at least a portion of the segment that is invalid resulting in returning zeros on subsequent reads of the RAID elements and corresponding parity stripe elements that are invalid in the segment without writing the zeros.

7. The computer program product of claim 6 wherein the RAID elements include sub-RAID elements.

8. The computer program product of claim 6 wherein at least the portion of the segment includes RAID elements that are invalid in the segment.

9. The computer program product of claim 8 wherein at least the portion of the segment further includes corresponding parity stripe elements that are invalid in the segment.

10. The computer program product of claim 6 wherein the segment is parity protected using one of RAID-5 and RAID-6.

11. A computing system including one or more processors and one or more memories configured to perform operations comprising:

submitting a write for a write-request equal to a size of valid data in a segment;

decomposing the write-request into RAID elements and corresponding parity stripe elements;

calculating parity for RAID stripes using only valid RAID elements of the RAID elements;

issuing a write for all the valid RAID elements and the corresponding parity stripe elements; and

based at least in part on the calculation of the parity for the RAID stripes using only the valid RAID elements of the RAID elements, issuing an unmap command to at least a portion of the segment that is invalid resulting in returning zeros on subsequent reads of the RAID elements and corresponding parity stripe elements that are invalid in the segment without writing the zeros.

12. The computing system of claim 11 wherein the RAID elements include sub-RAID elements.

13. The computing system of claim 11 wherein at least the portion of the segment includes RAID elements that are invalid in the segment and corresponding parity stripe elements that are invalid in the segment.

14. The computing system of claim 11 wherein the segment is parity protected using one of RAID-5 and RAID-6.

Assignments (10)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0280) Recorded Jun 10, 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 062022/0255 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0124) Recorded Jun 10, 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 062022/0012 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (056295/0001) Recorded Jun 10, 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 062021/0844 →
RELEASE OF SECURITY INTEREST Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058297/0332 →
SECURITY INTEREST Recorded May 19, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056295/0124 →
SECURITY INTEREST Recorded May 19, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056295/0001 →
SECURITY INTEREST Recorded May 19, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 056295/0280 →
CORRECTIVE ASSIGNMENT TO CORRECT THE MISSING PATENTS THAT WERE ON THE ORIGINAL SCHEDULED SUBMITTED BUT NOT ENTERED PREVIOUSLY RECORDED AT REEL: 056250 FRAME: 0541. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded May 17, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 056311/0781 →
SECURITY AGREEMENT Recorded May 14, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 056250/0541 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2021
From: VANKAMAMIDI, VAMSI K.; ALKALAY, AMITAI; LEE, SHUYU
To: EMC IP HOLDING COMPANY, LLC
Reel/Frame 056017/0148 →