×

Managing a global namespace for a distributed filesystem

  • US 10,296,494 B2
  • Filed: 09/29/2017
  • Issued: 05/21/2019
  • Est. Priority Date: 11/14/2011
  • Status: Active Grant
First Claim
Patent Images

1. A computer-implemented method for managing a global namespace for a distributed filesystem, the method comprising:

  • collectively managing the data of the distributed filesystem using two or more cloud controllers, wherein collectively managing the data comprises;

    storing the data for the distributed filesystem in one or more cloud storage systems, wherein the cloud controllers cache and ensure data consistency for data stored in the cloud storage systems; and

    caching data for the distributed filesystem in each cloud controller;

    dynamically managing a global namespace for the distributed filesystem across the two or more cloud controllers by assigning distinct portions of the global namespace across the two or more of the cloud controllers, wherein each cloud controller is configured to manage write accesses for its assigned portion of the global namespace, wherein a set of namespace mappings indicate the portions of the namespace that are assigned to each cloud controller, wherein the cloud controllers collectively change the set of namespace mappings dynamically over time based on accesses to the distributed filesystem; and

    receiving at an initial cloud controller a request from a client system to access a target file in the distributed filesystem, wherein the initial cloud controller is configured to use a namespace mapping for the global namespace to determine a preferred cloud controller for the request by;

    determining from the set of namespace mappings that a target cloud controller manages the portion of the namespace that includes the target file;

    determining that directly connecting the client system to the target cloud controller is unfavorable;

    determining the preferred cloud controller to be a viable intermediary to the target cloud controller; and

    referring the client system to the preferred cloud controller;

    wherein upon receiving the referral, the client system is configured to connect to the preferred cloud controller and send the request to the preferred cloud controller;

    wherein the preferred cloud controller is configured to contact the target cloud controller to request a write lock that is associated with the request; and

    wherein, upon receiving the write lock from the target cloud controller, the preferred cloud controller uses the write lock to service the request.

View all claims
  • 7 Assignments
Timeline View
Assignment View
    ×
    ×