Distributed Filesystem Global Namespace Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing network-based storage systems face challenges in maintaining data consistency and scalability, particularly in cloud-based storage where access latency and network failures can lead to data consistency issues and increased management overhead.

Innovation Solution

A distributed filesystem managed by multiple cloud controllers that cache and ensure data consistency, with a global namespace split across controllers, allowing for dynamic adjustments in namespace mappings and access routing to optimize performance and availability.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is stored in cloud-based storage systems, then storage capacity and accessibility are improved, but access latency and network failure risks increase

Engineering Contradiction:
Improvestorage capacityVSAvoidaccess reliability
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The global namespace is segmented and distributed across multiple cloud controllers, with each controller managing a specific portion of the namespace. This segmentation allows the system to maintain large storage capacity while improving access reliability by enabling clients to access data from multiple distributed controllers rather than a single centralized system.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Cloud controllers act as intermediary components between clients and the cloud storage system. These controllers cache data locally and manage namespace mappings, reducing direct network dependencies and mitigating the impact of network failures on access reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If multiple cloud controllers manage distributed filesystem data, then data consistency and scalability are improved, but system complexity increases

Engineering Contradiction:
Improvedata consistencyVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system segments the global namespace into distinct portions, with each cloud controller owning and managing a specific segment. This segmentation simplifies the coordination complexity by allowing controllers to independently manage their segments while maintaining overall system consistency through standardized protocols.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system uses dynamic parameter changes in namespace mappings to manage data distribution across controllers. By modifying mapping parameters rather than restructuring the entire system, the patent achieves improved data consistency and scalability with controlled complexity increases.

Inventive Principle:
Principle #35Parameter changes

3Speed

If cloud controllers cache files regardless of location, then access performance is improved, but memory usage and controller load increase

Engineering Contradiction:
Improvefile access performanceVSAvoidmemory usage
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent applies local quality by allowing each cloud controller to cache files based on its local characteristics and client access patterns, rather than enforcing a uniform caching strategy. Controllers can prioritize caching files that are frequently accessed by their local clients, improving performance while optimizing memory usage according to local needs.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

Controllers perform partial caching by caching only the portions of files or metadata that are most frequently accessed, rather than caching entire files. This partial action approach improves access performance for hot data while limiting memory consumption for less frequently accessed data.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10296494B2Managing a global namespace for a distributed filesystem
Publication Date: 2019.05.21 PANZURA LLC
  • US10296494B2 patent drawing
  • US10296494B2 patent drawing
  • US10296494B2 patent drawing

AI summary

The disclosed embodiments disclose techniques for managing a global namespace for a distributed filesystem. Two or more cloud controllers collectively manage distributed filesystem data that is stored in a cloud storage system; the cloud controllers ensure data consistency for the stored data, and each cloud controller caches portions of the distributed filesystem. Furthermore, a global namespace for the distributed filesystem is also split across these cloud controllers, with each cloud controller “owning” (e.g., managing write accesses for) a distinct portion of the global namespace and maintaining a set of namespace mappings that indicate which portion of the namespace is assigned to each cloud controller. During operation, an initial cloud controller receives a request from a client system to access a target file in the distributed system. This initial cloud controller uses the namespace mappings for the global namespace to determine a preferred cloud controller that will handle the request.