Virtual File System for Small-File Storage in Kubernetes

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The storage performance of small files in distributed file systems, such as Lustre, deteriorates as the number of files increases, leading to reduced read-write efficiency due to metadata management challenges, especially in deep learning applications where small files like images and texts significantly impact overall efficiency.

Innovation Solution

A small-file storage optimization system based on a virtual file system in a KUBERNETES user-mode application, which encapsulates a network file system server and client within an NFS specific image container, and a virtual file system server and client, deployed on object storage servers, creating virtual file blocks for efficient storage and management of small files.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If small files are stored in the Lustre file system, then storage capacity is increased, but read-write efficiency is significantly reduced as the amount of files increases

Engineering Contradiction:
Improvestorage capacityVSAvoidread-write efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent segments the file system into two distinct layers: a virtual file system layer for managing small files and a physical distributed file system layer (Lustre) for storing large files. This segmentation allows each layer to be optimized independently - the virtual file system can implement efficient metadata management for small files while the underlying Lustre system maintains its high storage capacity and throughput for large files, thereby resolving the contradiction between storage capacity and read-write efficiency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a virtual file system as an intermediary layer between the user-mode application and the physical distributed file system. This intermediary handles metadata operations for small files efficiently, preventing the metadata management bottleneck from affecting the underlying storage system's performance. The virtual file system acts as a buffer that translates small file operations into efficient storage operations on the Lustre system, maintaining both high storage capacity and read-write efficiency.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If the file system retrieves metadata of specific small files in the entire file system, then file access is enabled, but storage performance is affected due to the large number of files

Engineering Contradiction:
Improvefile accessVSAvoidstorage performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent segments metadata management into two parts: a virtual metadata layer for small files that provides efficient access control and retrieval, and a physical metadata layer for the distributed file system. The virtual metadata layer maintains indexes and metadata structures specifically optimized for small file operations, allowing fast file access without requiring the entire distributed file system to process metadata requests, thus preserving storage performance while enabling ease of operation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The virtual file system serves as an intermediary that handles all metadata operations for small files before they reach the physical distributed file system. This intermediary layer caches and manages metadata locally, enabling fast file access through efficient metadata retrieval without burdening the entire file system. The intermediary filters and processes metadata requests, ensuring that storage performance is not degraded by the large number of small files.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If a virtual file block is created to store small files, then read-write performance is improved, but device complexity increases

Engineering Contradiction:
Improveread-write performanceVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements a universal virtual file block structure that can store both small files and serve as a bridge to the distributed file system. This multi-functional design allows the same virtual file block mechanism to handle metadata storage, small file data, and coordination with the underlying Lustre system, thereby improving read-write performance without proportionally increasing device complexity. The universal structure consolidates multiple functions into a single component, reducing the overall complexity overhead.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent employs a nested structure where virtual file blocks are contained within the virtual file system layer, which itself is nested within the container orchestration environment, and finally within the distributed file system infrastructure. This nesting allows each layer to manage its own complexity independently while benefiting from the layers below. The virtual file blocks provide improved read-write performance through their specialized structure, while the nested architecture contains and manages the resulting complexity at appropriate abstraction levels.

Inventive Principle:
Principle #7Nested doll (Nesting)

Data Source

PatentUS11409712B2Small-file storage optimization system based on virtual file system in KUBERNETES user-mode application
Publication Date: 2022.08.09 SUN YAT SEN UNIV
  • US11409712B2 patent drawing
  • US11409712B2 patent drawing
  • US11409712B2 patent drawing

AI summary

A small-file storage optimization system based on a virtual file system in a KUBERNETES user-mode application which is applied to a target file system includes a network file system including a network file system server and a network file system client, a user-mode application mounted on a shared directory exposed by the network file system server through the network file system client, and a virtual file system including a virtual file system client and a virtual file system server. A file block creating and formatting module in the virtual file system server creates a virtual file block for storing small files on one or more object storage target devices of the target file system, and the virtual file block is mounted on the shared directory exposed by the network file system server.