Cluster File System with PLFS Middleware for Tiered Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional Lustre file systems face challenges in balancing storage capacity and IO throughput, leading to suboptimal performance or excessive costs, particularly in supercomputers and complex computing environments.
Innovation Solution
Implementing a cluster file system with both an object storage server tier and a scale-out network attached storage tier, utilizing parallel log-structured file system (PLFS) middleware to efficiently move data between tiers, allowing for the performance benefits of flash storage and the cost-effectiveness of scale-out network attached storage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If conventional Lustre implementations use traditional storage arrays with object storage servers, then IO throughput can be maintained, but storage capacity becomes expensive and difficult to scale
Solution Approach 1:
The storage system is segmented into multiple tiers: a first storage tier comprising object storage servers with fast storage arrays for high-performance IO, and a second storage tier comprising scale-out network attached storage nodes for capacity. This segmentation allows the system to achieve both high performance and large capacity by distributing data across different storage media with different characteristics, resolving the contradiction between capacity and cost.
Solution Approach 2:
The patent introduces a hierarchical storage architecture that adds a vertical dimension to storage organization. Instead of a single flat storage layer, the system organizes storage across multiple tiers with different performance and capacity characteristics. This dimensional change enables the system to simultaneously provide high performance (via flash storage tier) and high capacity (via scale-out NAS tier) at reduced cost.
2Ease of manufacture
If scale-out network attached storage is used to reduce cost, then storage capacity increases at lower cost, but IO throughput performance becomes inadequate
Solution Approach 1:
The storage system is segmented into multiple tiers: a first storage tier comprising object storage servers with fast storage arrays for high-performance IO, and a second storage tier comprising scale-out network attached storage nodes for capacity. This segmentation allows the system to achieve both high performance and large capacity by distributing data across different storage media with different characteristics, resolving the contradiction between capacity and cost.
Solution Approach 2:
Different storage tiers are assigned different quality characteristics: the first tier uses fast flash storage for high IO throughput, while the second tier uses cost-effective disk storage for capacity. The PLFS middleware ensures that each tier is accessed through appropriate interfaces (direct access for first tier, network access for second tier), allowing the system to achieve both high performance and low cost simultaneously.
3Adaptability or versatility
If data is stored in a single storage tier, then system complexity is reduced, but the ability to balance performance and capacity requirements is lost
Solution Approach 1:
The storage system is segmented into multiple tiers: a first storage tier comprising object storage servers with fast storage arrays for high-performance IO, and a second storage tier comprising scale-out network attached storage nodes for capacity. This segmentation allows the system to achieve both high performance and large capacity by distributing data across different storage media with different characteristics, resolving the contradiction between capacity and cost.
Solution Approach 2:
PLFS middleware acts as an intermediary layer between the Lustre file system and the heterogeneous storage tiers. It manages the complexity of data movement between tiers, provides unified access to both fast and capacity storage, and presents a consistent interface to applications. This intermediary simplifies the overall system architecture while enabling sophisticated performance-capacity balancing.
4Productivity
If direct IO operations are performed with back-end storage arrays, then IO throughput is maximized, but storage devices are not well matched to current system needs
Solution Approach 1:
The storage system is designed to be dynamic rather than static. The PLFS middleware continuously monitors IO patterns and can migrate data between storage tiers based on changing workloads. This dynamic adaptation allows the system to match storage resources to current needs, resolving the contradiction between maximizing IO throughput and adapting to changing requirements.
Solution Approach 2:
The system changes storage parameters dynamically by migrating data between tiers based on workload characteristics. When IO throughput is critical, data is placed in the first tier with fast flash storage. When capacity is the priority, data is moved to the second tier with cost-effective disk storage. This parameter change capability allows the system to adapt storage allocation to current needs while maintaining high performance when required.
Data Source
AI summary
A cluster file system comprises a metadata server and a plurality of object storage servers each having one or more object storage targets. The object storage servers and their corresponding object storage targets are arranged in a first storage tier of the cluster file system. The cluster file system further comprises a second storage tier that includes a plurality of nodes of a scale-out network attached storage cluster. The cluster file system is configured to control movement of data between the first and second storage tiers. For example, in some embodiments, the object storage servers comprise one or more components of parallel log-structured file system (PLFS) middleware configured to control migration of data between the first and second storage tiers.


