IP Library Granted Patent US 12,045,479
Granted Patent B2
US 12,045,479 · App. 17/314,403 · Granted Jul 23, 2024

Raid storage system with a protection pool of storage units

Inventors: Paul Nehse (Livermore, CA); Michael Thiels (San Martin, CA); Devendra Kulkarni (Santa Clara, CA)
Assignee: EMC IP HOLDING COMPANY LLC
G06F3/0635G06F3/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 12,045,479
App. No.
17/314,403
Granted
Jul 23, 2024
Kind
B2
Abstract

A storage node can include one or more processors and one or more storage disks, where the one or more storage disks include one or more local physical extents (PEs) that are local to the storage node. The storage node can include a protection pool driver executed by the one or more processors to run in a kernel space of the storage node, where the protection pool driver includes a local disk manager (LDM) and an array group module (AGRP). The LDM can be configured to manage the one or more local PEs at the one or more storage disks. The AGRP can include a number of storage arrays, where each of the storage arrays includes one or more virtual disks, where each of the one or more virtual disks is associated to at least a local PE or an external PE external to the storage node.

Claims (38)

1. A storage node, comprising:

one or more processors;

one or more storage disks comprising one or more local physical extents (PEs) that are local to the storage node, wherein a first of the one or more local PEs has a same size as a second of the one or more local PEs, and wherein each of the one or more local PEs has a unique identifier identifying a physical address of the PE, where the physical address of the PE includes an address corresponding to the storage node, a storage disk of the one or more storage disks, and a logical block address on the storage disk;

a physical extent manager (PEM) executed by the one or more processors to run in a user space of the storage node; and

a protection pool driver executed by the one or more processors to run in a kernel space of the storage node, wherein the protection pool driver includes a local disk manager (LDM) and an array group module (AGRP),

wherein the LDM is configured to:

manage the one or more local PEs at the one or more storage disks;

monitor physical disk errors of the one or more storage disks;

send a first message to the PEM when one of the one or more storage disks has exceeded an error threshold; and

broadcast a second message to other PEMs on all other storage nodes in communication with the storage node indicating a storage disk has failed, wherein the other PEMs run in the user space of their respective storage node; and

wherein the AGRP comprises a plurality of storage arrays representing a plurality of redundant array of independent disks (RAID) arrays each having a RAID configuration, wherein each of the plurality of storage arrays comprises one or more virtual disks, wherein each of the one or more virtual disks is associated to at least one PE, wherein the at least one PE includes one of: a local PE or an external PE, wherein the external PE is external to the storage node.

2. The storage node of claim 1 , wherein the PEM is configured to communicate with the AGRP to determine available storage arrays that can be used by a file system of the storage node.

3. The storage node of claim 1 , further comprising a communication manager to provide a messaging service, wherein one of the PEM, the LDM or the AGRP uses the messaging service to communicate with one another.

4. The storage node of claim 1 , wherein the PEM is configured to communicate with the LDM, or a remote LDM of another storage node in a cluster, to determine one or more local or remote PEs that are available to be used to create a new storage array within the AGRP.

5. The storage node of claim 1 , wherein the PEM is configured to communicate with the AGRP to determine one or more array groups that are accessible by a file system of the storage node.

6. The storage node of claim 1 , wherein the LDM is configured to create mapping metadata to map the one or more local PEs to locations at the one or more storage disks.

7. The storage node of claim 1 , wherein the AGRP is configured to send a notification to another storage node in a cluster in response to creating an array group at the AGRP.

8. The storage node of claim 1 , wherein the plurality of storage arrays of the AGRP includes one or more tiers.

9. The storage node of claim 8 , wherein the one or more tiers comprise at least one of: an active tier, a cache tier, or a cloud tier, wherein two or more tiers can include PEs that reside in a same storage disk.

10. A cluster of storage nodes, wherein a storage node of the cluster comprises:

one or more processors;

one or more storage disks comprising one or more local physical extents (PEs) that are local to the storage node, wherein a first of the one or more local PEs has a same size as a second of the one or more local PEs, and wherein each of the one or more local PEs has a unique identifier identifying a physical address of the PE, where the physical address of the PE includes an address corresponding to the storage node, a storage disk of the one or more storage disks, and a logical block address on the storage disk;

a physical extent manager (PEM) executed by the one or more processors to run in a user space of the storage node; and

a protection pool driver executed by the one or more processors to run in a kernel space of the storage node, wherein the protection pool driver includes a local disk manager (LDM) and an array group module (AGRP),

wherein the LDM is configured to:

manage the one or more local PEs at the one or more storage disks;

monitor physical disk errors of the one or more storage disks;

send a first message to the PEM when one of the one or more storage disks has exceeded an error threshold; and

broadcast a second message to other PEMs on all other storage nodes in the cluster of storage nodes indicating a storage disk has failed, wherein the other PEMs run in a user space of their respective storage node; and

wherein the AGRP comprises a plurality of storage arrays representing a plurality of redundant array of independent disks (RAID) arrays each having a RAID configuration, wherein each of the plurality of storage arrays comprises one or more virtual disks, wherein each of the one or more virtual disks is associated at least one PE, wherein the at least one PE includes one of: a local PE or an external PE, wherein the external PE is external to the storage node.

11. The cluster of storage nodes of claim 10 , wherein the PEM is configured to communicate with the AGRP to determine available storage arrays that can be used by a file system of the storage node.

12. The cluster of storage nodes of claim 10 , further comprising a communication manager to provide a messaging service, wherein one of the PEM, the LDM or the AGRP uses the messaging service to communicate with one another.

13. The cluster of storage nodes of claim 10 , wherein the PEM is configured to communicate with the LDM, or a remote LDM of another storage node in the cluster, to determine one or more local or remote PEs that are available to be used to create a new storage array within the AGRP.

14. The cluster of storage nodes of claim 10 , wherein the PEM is configured to communicate with the AGRP to determine one or more array groups that are accessible by a file system of the storage node.

15. The cluster of storage nodes of claim 10 , wherein the LDM is configured to create mapping metadata to map the one or more local PEs to locations at the one or more storage disks.

16. The cluster of storage nodes of claim 10 , wherein the AGRP is configured to send a notification to another storage node in the cluster in response to creating an array group at the AGRP.

17. The cluster of storage nodes of claim 10 , wherein the plurality of storage arrays of the AGRP includes one or more tiers.

18. The cluster of storage nodes of claim 17 , wherein the one or more tiers comprise at least one of: an active tier, a cache tier, or a cloud tier, wherein two or more tiers can include PEs that reside in a same storage disk.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (058014/0560) 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/0473 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057931/0392) 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/0382 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057758/0286) 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 061654/0064 →
SECURITY INTEREST Recorded Oct 6, 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 058014/0560 →
SECURITY INTEREST Recorded Oct 6, 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 057758/0286 →
SECURITY INTEREST Recorded Oct 6, 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 057931/0392 →
SECURITY AGREEMENT Recorded Oct 1, 2021
From: DELL PRODUCTS, L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 057682/0830 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 7, 2021
From: NEHSE, PAUL; THIELS, MICHAEL; KULKARNI, DEVENDRA
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 056170/0394 →
Continuity (1)
Related Publication 20220357864A1 · Nov 10, 2022