IP Library Granted Patent US 11,449,234
Granted Patent B1
US 11,449,234 · App. 17/333,815 · Granted Sep 20, 2022

Efficient data access operations via a mapping layer instance for a doubly mapped redundant array of independent nodes

Inventors: Mikhail Danilov (Saint Petersburg, RU); Konstantin Buinov (Prague, CZ)
Assignee: EMC IP HOLDING COMPANY LLC
G06F3/0611G06F3/0604G06F3/0631G06F3/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,449,234
App. No.
17/333,815
Granted
Sep 20, 2022
Kind
B1
Abstract

Efficient handling of disk input/output (I/O) operations is disclosed for a storage system supporting a doubly mapped redundant array of independent nodes. Delegating I/O operation management to a mapping layer component can support adapting I/O operation performance based on a topology of a real cluster supporting doubly mapped clusters. In traditional techniques, some corresponding real node topologies can result in inefficiently moving data from a first real node to a second real node and then promptly moving it back from the second real node to the first real node. These, and other, inefficient disk I/O conditions can be mitigated or avoided based on the presently disclosed techniques that can support more direct access to mapping information. Moreover, the disclosed techniques can support proportionately adapting an order of performing I/O operations due to the inherent isolation of real nodes and real clusters in accord with the disclosed subject matter.

Claims (33)

1. A system, comprising:

a processor; and

a memory that stores executable instructions that, when executed by the processor, facilitate performance of operations, comprising:

determining a data operation at a first real node of a real cluster of a data storage system;

determining a second real node of the data storage system that stores data corresponding to the data operation;

determining a third real node of the data storage system that executes a storage service that manages storage of the data at the second real node; and

in response to determining that the first, the second, and the third real nodes are different real nodes, permitting the data operation at the second real node and correspondingly notifying the first and the third real nodes.

2. The system of claim 1 , wherein the data operation is selected from a group of operations comprising a data input operation that inputs data from the first real node into the second real node, and a data output operation that outputs data from the second real node to the first real node.

3. The system of claim 2 , wherein the data input operation that inputs data from the first real node into the second real node excludes an input process, the input process comprising inputting the data from the first real node into the third real node then inputting the data from the third real node into the second real node.

4. The system of claim 2 , wherein the data output operation that outputs data from the second real node to the first real node excludes an output process, the output process comprising outputting the data from the second real node to the third real node then outputting the data from the third real node to the first real node.

5. The system of claim 1 , wherein the operations further comprise in response to determining that the first and the second real node are a same real node, and that the third real node is a different real node from the first and the second real node, permitting the data operation at the first real node and correspondingly notifying the third real node.

6. The system of claim 5 , wherein the data operation is selected from a group of operations comprising a data input operation that inputs data into the real node embodying the first and the second real node, and a data output operation that outputs data from the real node embodying the first and the second real node.

7. The system of claim 6 , wherein the data input operation excludes an input process, the input process comprising inputting the data from the first real node into the third real node and subsequently inputting the data from the third real node back into the first real node.

8. The system of claim 6 , wherein the data output operation excludes an output process, the output process comprising outputting the data from the first real node to the third real node and subsequently outputting the data from the third real node back to the first real node.

9. The system of claim 1 , wherein the operations further comprise:

determining an allocation of a storage space of a fourth real node to a first mapped node and to a second mapped node;

determining a proportional allocation of input/output times for the first mapped node and the second mapped node based on the allocation of the storage space of the fourth real node; and

adapting an order of input/output operations in accord with the proportional allocation of input/output times.

10. The system of claim 9 , wherein determining the allocation is performed via a mapping layer instance of the fourth real node, resulting in the fourth real node input/output operations being isolated from other input/output operations of other real nodes.

11. The system of claim 10 , wherein the other real nodes are further each input/output operation isolated, resulting in a real cluster comprising the fourth real node and the other real nodes being input/output operation isolated.

12. A method, comprising:

determining, by a system comprising a processor, a data operation at a first real node of a real cluster of a data storage system, a second real node of the data storage system that stores data corresponding to the data operation, and a third real node of the data storage system that executes a storage service that manages storage of the data at the second real node; and

in response to determining, by the system, that the first, the second, and the third real nodes are different real nodes, permitting the data operation at the second real node and correspondingly notifying the first and the third real nodes.

13. The method of claim 12 , wherein the data input operation inputs data from the first real node into the second real node and precludes the system from inputting the data from the first real node into the third real node and from subsequently inputting the data from the third real node into the second real node.

14. The method of claim 12 , wherein the data output operation that outputs data from the second real node to the first real node and precludes the system from outputting the data from the second real node to the third real node and from subsequently outputting the data from the third real node to the first real node.

15. The method of claim 12 , further comprising, in response to determining, by the system, that the first and the second real node are a same real node, and that the third real node is a different real node, permitting the data operation at the first real node and correspondingly notifying the third real node.

16. The method of claim 15 , wherein the data operation precludes the system from inputting the data from the first real node into the third real node and from subsequently inputting the data from the third real node back into the first real node.

17. The method of claim 15 , wherein data operation precludes the system from outputting the data from the first real node to the third real node and from subsequently outputting the data from the third real node back to the first real node.

18. A non-transitory machine-readable medium, comprising executable instructions that, when executed by a processor, facilitate performance of operations, comprising:

determining a data operation at a first real node of a real cluster of a data storage system, a second real node of the data storage system that stores data corresponding to the data operation, and a third real node of the data storage system that executes a storage service that manages storage of the data at the second real node; and

in response to determining that the first, the second, and the third real nodes are different real nodes, permitting the data operation at the second real node and correspondingly notifying the first and the third real nodes.

19. The non-transitory machine-readable medium of claim 18 , wherein the operations further comprise, in response to determining that the first and the second real node are a same real node, and that the third real node is not the same real node, permitting the data operation at the first real node and correspondingly notifying the third real node.

20. The non-transitory machine-readable medium of claim 18 , wherein performance of the data operation communicates less information between real nodes as compared to when the third real node controls data operations, comprising the data operation.

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 28, 2021
From: DANILOV, MIKHAIL; BUINOV, KONSTANTIN
To: EMC IP HOLDING COMPANY LLC
Reel/Frame 056385/0398 →