Distributed Storage Metadata Segmentation for Failure-Resilient Scaling
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional file systems face scalability limitations due to a limited number of metadata servers, leading to potential data loss in case of server failure and inefficiencies in load distribution, especially in large clusters.
Innovation Solution
A distributed file system architecture utilizing non-volatile memory (NVM) and GPUs to distribute metadata across multiple servers, enabling scalable operation with failure-resilient address spaces (DFRAS) and intelligent load balancing through penta-groups, allowing independent node operations and reduced coordination needs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a limited number of metadata servers are used in conventional file systems, then device complexity is reduced, but scalability is limited and reliability deteriorates due to potential data loss on server failure
Solution Approach 1:
The patent segments metadata management by introducing per-bucket leaders within distributed hash tables. Each bucket has a designated leader node that handles metadata operations for that specific bucket, dividing the overall metadata management workload into smaller, independent segments. This allows the system to scale by adding more buckets and leaders without proportionally increasing coordination complexity.
Solution Approach 2:
The patent introduces per-bucket leaders as intermediary components between client requests and the distributed metadata servers. These bucket leaders act as mediators that receive metadata operations, determine the appropriate storage location through hashing, and coordinate with relevant servers. This intermediary layer reduces the complexity of direct client-to-server coordination and improves system scalability.
2Productivity
If more metadata servers are added to improve scalability and reliability, then system capacity increases, but coordination overhead and latency increase
Solution Approach 1:
By segmenting metadata operations into per-bucket leadership models, the patent reduces coordination scope. Each bucket leader independently manages its bucket without requiring coordination with other buckets, enabling parallel processing of metadata operations across different buckets. This segmentation eliminates the need for global coordination and reduces latency.
Solution Approach 2:
The patent implements self-service mechanisms where bucket leaders autonomously determine their roles and manage their respective buckets independently. The hashing function automatically routes operations to the correct bucket leader without external coordination, and leaders self-manage their metadata operations. This self-service approach eliminates coordination overhead and improves scalability.
3Reliability
If centralized metadata control is used, then consistency is easier to maintain, but single point of failure risk increases and scalability is limited
Solution Approach 1:
The patent segments centralized metadata control into distributed per-bucket leaders. Instead of a single centralized authority, multiple bucket leaders independently manage metadata for different buckets. This segmentation eliminates the single point of failure while maintaining consistency through the deterministic hashing function that ensures each bucket has a well-defined leader.
Solution Approach 2:
The patent changes the control parameter from centralized authority to distributed hashing-based selection. The hashing function transforms the control mechanism into a deterministic distribution approach where each metadata operation is automatically routed to the appropriate bucket leader based on its key. This parameter change enables failure resilience without requiring complex coordination protocols.
Data Source
AI summary
A plurality of computing devices are communicatively coupled to each other via a network, and each of the plurality of computing devices is operably coupled to one or more of a plurality of storage devices. A plurality of failure resilient stripes is distributed across the plurality of storage devices such that each of the plurality of failure resilient stripes spans a plurality of the storage devices. A graphics processing unit is operable to access data files from the failure resilient stripes, while bypassing a kernel page cache. Furthermore, these data files may be accessed in parallel by the graphics processing unit.


