Striped Metadata Storage in Parallel File Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In parallel file systems, the large amount of metadata required for concurrent writing processes leads to performance degradation and excessive storage needs, as all writing processes must redundantly store and read the same metadata, causing bandwidth and disk space issues.

Innovation Solution

Metadata is striped across multiple subdirectories in a round-robin manner and stored on object storage servers, allowing only the necessary metadata to be accessed during read operations, reducing metadata lookup time and memory footprint.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If metadata is stored centrally for all sub-files, then data consistency is maintained, but read performance degrades due to large metadata footprint and bandwidth consumption

Engineering Contradiction:
Improvedata consistencyVSAvoidread performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments metadata into two types: common metadata (file-level information applicable to all sub-files) and sub-file metadata (individual sub-file information). Common metadata is stored once and shared across all sub-files, while sub-file metadata is stored separately. This segmentation reduces redundant metadata storage and improves read performance by allowing processes to access only relevant sub-file metadata without loading entire file metadata into memory.

Inventive Principle:
Principle #1Segmentation

2Reliability

If all writing processes store the same metadata redundantly, then data consistency is ensured, but disk space is wasted and bandwidth is consumed

Engineering Contradiction:
Improvedata consistencyVSAvoiddisk space
Core Design Contradiction:
ReliabilityVSLoss of substance

Solution Approach 1:

The patent extracts common metadata from individual sub-file metadata structures and stores it separately at the file level. This extraction eliminates redundant storage of identical metadata across multiple sub-files. When a process needs to access metadata, it retrieves the shared common metadata once and combines it with specific sub-file metadata, significantly reducing disk space consumption and network bandwidth usage compared to storing complete metadata copies for each sub-file.

Inventive Principle:
Principle #2Taking out (Extraction)

3Speed

If metadata is read into memory for processing, then access speed improves, but memory footprint increases significantly

Engineering Contradiction:
Improvemetadata access speedVSAvoidmemory footprint
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent segments metadata into common and sub-file portions, allowing processes to load only the necessary sub-file metadata into memory while keeping common metadata in a more compact shared format. This segmentation enables selective loading of metadata based on process needs, reducing memory footprint while maintaining fast access speeds for frequently accessed metadata through efficient data structures and caching strategies.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10162836B1Parallel file system with striped metadata
Publication Date: 2018.12.25 EMC IP HLDG CO LLC
  • US10162836B1 patent drawing
  • US10162836B1 patent drawing
  • US10162836B1 patent drawing

AI summary

Metadata associated with a plurality of sub-files associated with a single shared file is stored in a parallel file system. A plurality of processes generate a shared file. A compute node implements a Parallel Log Structured File System (PLFS) library to store at least one portion of the shared file and metadata for the at least one portion of the shared file on one or more of the plurality of object storage servers. The compute node is further configured to store the metadata by striping the metadata across a plurality of subdirectories of the shared file. The metadata is optionally striped across the plurality of subdirectories in a round-robin manner. The plurality of subdirectories are stored on one or more of the object storage servers. Write and read processes optionally communicate using a message passing interface. A given write process optionally writes metadata for a given portion of the shared file to an index file in a particular one of the subdirectories corresponding to the given portion.