IP Library Granted Patent US 10,831,521
Granted Patent B2
US 10,831,521 · App. 15/965,656 · Granted Nov 10, 2020

Efficient metadata management

Inventors: Karan Gupta (San Jose, CA); Pavan Kumar Konka (Milpitas, CA); Rishi Bhardwaj (San Jose, CA); Rohit Jain (Cupertino, CA); Tabrez Parvez Memon (Campbell, CA)
Assignee: Nutanix, Inc.
G06F9/45558G06F2009/45583H04L67/1097
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,831,521
App. No.
15/965,656
Filed
Apr 27, 2018
Granted
Nov 10, 2020
Kind
B2
Art Unit
2191
USPC
718/1
Abstract

Systems for high-performance distributed computing. The systems include techniques for managing data and metadata across multiple nodes. A method embodiment commences by storing data at a node using a first storage mechanism that is local to the node. A first set of metadata is configured to identify a storage location for the stored data. The first set of metadata is stored using the same first storage mechanism that is local to the node. For accessing the first set of metadata, a second set of metadata is configured to identify a storage location for the first set of metadata. The second set of metadata is stored using a second storage mechanism that comprises a distributed metadata storage facility that stores metadata across multiple storage locations having at least one of the multiple storage locations that is not local to the node that stores data and metadata using the first storage mechanism.

Claims (41)

1. A method comprising:

maintaining multiple types of metadata for content within a storage pool, wherein the storage pool is formed from local storage devices distributed across multiple nodes connected over a network,

a first type of metadata being stored at respective nodes of the multiple nodes and at least identifying a physical storage location for data stored in a storage device at the same respective node, and

a second type of metadata being distributed across the multiple nodes connected over the network and identifying physical storage locations of the first type of metadata at each node of the multiple nodes; and

wherein an access request for data is serviced at least by accessing the second type of metadata distributed across the multiple nodes to determine a physical storage location for a corresponding portion of the first type of metadata at the same node as the data.

2. The method of claim 1 , wherein the first type of metadata comprises cascaded metadata.

3. The method of claim 1 , wherein the first type of metadata comprises cascaded metadata and the cascaded metadata comprises multiple levels of subsets of metadata at the respective nodes, wherein a first subset identifies the physical storage location of the data, a second subset identifies a physical storage location of the first subset.

4. The method of claim 3 , further comprising:

accessing an initial level of the multiple levels of the cascaded metadata to identify a physical address of a portion of the data that is local to the node and iteratively accessing successively next levels of the cascaded metadata until the physical address of the portion of the data that is local to the node is identified or until a last level of the multiple levels of the cascaded metadata is reached.

5. The method of claim 1 , wherein the multiple nodes connected over the network comprises a multi-node ring structure or the second type of metadata comprises a key-value store.

6. The method of claim 3 , wherein a portion of the data that is local to the node is accessed when a physical address of the data that is local to the node is identified by accessing one of multiple levels of the cascaded metadata.

7. The method of claim 1 , wherein at least one of, the first type of metadata, or the second type of metadata, codify a logical-to-physical mapping associated with a virtual disk.

8. The method of claim 1 , wherein the second type of metadata comprises metadata associated with an unpopulated portion of data that is local to the node.

9. A non-transitory computer readable medium having stored thereon a sequence of instructions which, when stored in memory and executed by a processor causes the processor to perform a set of acts the acts comprising:

maintaining multiple types of metadata for content within a storage pool, wherein the storage pool is formed from local storage devices distributed across multiple nodes connected over a network,

a first type of metadata being stored at respective nodes of the multiple nodes and at least identifying a physical storage location for data stored in a storage device at the same respective node, and

a second type of metadata being distributed across the multiple nodes connected over the network and identifying physical storage locations of the first type of metadata at each node of the multiple nodes; and

wherein an access request for data is serviced at least by accessing the second type of metadata distributed across the multiple nodes to determine a physical storage location for a corresponding portion of the first type of metadata at the same node as the data.

10. The computer readable medium of claim 9 , wherein the first type of metadata comprises cascaded metadata.

11. The computer readable medium of claim 9 , wherein the first type of metadata comprises cascaded metadata and the cascaded metadata comprises multiple levels of subsets of metadata at the respective nodes, wherein a first subset identifies the physical storage location of the data, a second subset identifies a physical storage location of the first subset.

12. The computer readable medium of claim 11 , the set of acts further comprising:

accessing an initial level of the multiple levels of the cascaded metadata to identify a physical address of a portion of the data that is local to the node and iteratively accessing successively next levels of the cascaded metadata until the physical address of the portion of the data that is local to the node is identified or until a last level of the multiple levels of the cascaded metadata is reached.

13. The computer readable medium of claim 9 , wherein the multiple nodes connected over the network comprises a multi-node ring structure or the second type of metadata comprises a key-value store.

14. The computer readable medium of claim 9 , wherein the second type of metadata comprises metadata associated with an unpopulated portion of data that is local to the node.

15. The computer readable medium of claim 11 , wherein a portion of the data that is local to the node is accessed when a physical address of the data that is local to the node is identified by accessing one of multiple levels of the cascaded metadata.

16. The computer readable medium of claim 9 , wherein at least one of, the first type of metadata, or the second type of metadata, codify a logical-to-physical mapping associated with a virtual disk.

17. A system comprising:

a storage medium having stored thereon a sequence of instructions; and

a processor that execute the sequence of instructions to cause the processor to perform a set of acts comprising,

maintaining multiple types of metadata for content within a storage pool, wherein the storage pool is formed from local storage devices distributed across multiple nodes connected over a network,

a first type of metadata being stored at respective nodes of the multiple nodes and at least identifying a physical storage location for data stored in a storage device at the same respective node, and

a second type of metadata being distributed across the multiple nodes connected over the network and identifying physical storage locations of the first type of metadata at each node of the multiple nodes; and

wherein an access request for data is serviced at least by accessing the second type of metadata distributed across the multiple nodes to determine a physical storage location for a corresponding portion of the first type of metadata at the same node as the data.

18. The system of claim 17 , wherein the first type of metadata comprises cascaded metadata.

19. The system of claim 17 , wherein the first type of metadata comprises cascaded metadata and the cascaded metadata comprises multiple levels of subsets of metadata at the respective nodes, wherein a first subset identifies the physical storage location of the data, a second subset identifies a physical storage location of the first subset.

20. The system of claim 19 , the set of acts further comprising:

accessing an initial level of the multiple levels of the cascaded metadata to identify a physical address of a portion of the data that is local to the node and iteratively accessing successively next levels of the cascaded metadata until the physical address of the portion of the data that is local to the node is identified or until a last level of the multiple levels of the cascaded metadata is reached.

21. The system of claim 19 , wherein a portion of the data that is local to the node is accessed when a physical address of the data that is local to the node is identified by accessing one of multiple levels of the cascaded metadata.

22. The system of claim 17 , wherein the multiple nodes connected over the network comprises a multi-node ring structure or the second type of metadata comprises a key-value store.

23. The system of claim 17 , wherein the second type of metadata comprises metadata associated with an unpopulated portion of data that is local to the node.

24. The system of claim 17 , wherein at least one of, the first type of metadata, or the second type of metadata, codify a logical-to-physical mapping associated with a virtual disk.

Assignments (2)
SECURITY INTEREST Recorded Feb 13, 2025
From: NUTANIX, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 070206/0463 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 21, 2018
From: GUPTA, KARAN; KONKA, PAVAN KUMAR; BHARDWAJ, RISHI; JAIN, ROHIT; MEMON, TABREZ
To: NUTANIX INC.
Reel/Frame 047842/0925 →
Continuity (1)
Related Publication 20190370042A1 · Dec 5, 2019
Cited By (1)
US 12,235,758