×

NAMESPACE MANAGEMENT IN DISTRIBUTED STORAGE SYSTEMS

  • US 20150278397A1
  • Filed: 03/31/2014
  • Published: 10/01/2015
  • Est. Priority Date: 03/31/2014
  • Status: Active Grant
First Claim
Patent Images

1. A system, comprising:

  • one or more computing devices configured to;

    generate, at a metadata subsystem of a distributed multi-tenant file storage service, a directed acyclic graph (DAG) to represent a namespace of a directory, wherein each node of a plurality of nodes of the DAG comprises one of;

    (a) an array of node identifiers (NIArray) of a lower level of the DAG or (b) a list of namespace entries, and wherein at least one node of the DAG is stored at a different storage device than another node of the DAG;

    in response to a lookup request for a file store object,apply a hash function to a name of the file store object to obtain a particular hash value expressible as a first bit sequence of a selected length;

    navigate, using successive subsequences of the first bit sequence to identify DAG nodes to be examined at each level, a plurality of levels of the DAG starting from a root level of the DAG, to identify a target node of the DAG that includes a namespace entry of the file store object; and

    utilize contents of the namespace entry to determine one or more attributes of the file store object; and

    in response to a request to create a new file store object with a specified name,apply the hash function to the specified name to obtain another hash value expressible as a second bit sequence of the selected length;

    navigate, using successive subsequences of the second bit sequence, a plurality of levels of the DAG to identify a candidate node of the DAG for storing a new entry corresponding to the new file store object, wherein the candidate node comprises a particular list of entries; and

    in response to a determination that the candidate node meets a split criterion, distribute, using respective bit sequences obtained by applying the hash function for each entry, the new entry and at least a selected subset of entries of the particular list of entries among a plurality of DAG nodes including at least one new DAG node.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×