Inode Data Inlining for Storage Overhead Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In file systems, especially in distributed storage systems, the increasing size of hard disk drives leads to unused space in inodes, which can be optimized for storing metadata and dynamic attributes, but existing methods do not efficiently utilize this space for inlining data, resulting in storage overhead and resource inefficiencies.
Innovation Solution
The approach involves using the dynamic dinode area of inodes to store file content directly, eliminating the need for separate data blocks, mirroring data to reduce seeks and resource usage, and selectively enabling data inlining based on file size and directory configurations, allowing for optimized storage and reduced overhead.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If data is stored in separate data blocks, then data storage capacity is increased, but storage overhead increases and resource efficiency decreases
Solution Approach 1:
The patent merges data storage with metadata storage by inlining small files directly into the inode structure. This combines what were previously separate storage entities (data blocks and inode) into a unified structure, eliminating the overhead of separate data block management while maintaining storage capacity for small files.
Solution Approach 2:
The inode is transformed from a single-function metadata structure into a multi-functional structure that can store both metadata and file data. This universal approach allows the inode to serve dual purposes: maintaining file system metadata and storing actual file content, thereby reducing overall storage overhead.
2Reliability
If data is stored in separate data blocks, then data integrity is maintained, but computing resources are consumed and performance decreases
Solution Approach 1:
By combining data and metadata into a single inode structure, the patent reduces the number of I/O operations required to access and manage files. This merging eliminates the need to separately manage data block allocations and metadata updates, thereby conserving computing resources while maintaining data integrity through the unified structure.
3Ease of operation
If unused space in inodes is allocated for metadata, then metadata management is optimized, but space efficiency decreases
Solution Approach 1:
The inode's previously unused space is repurposed to serve dual functions: storing metadata and storing file data. This multi-functional utilization of inode space improves space efficiency by eliminating wasted capacity while maintaining optimized metadata management through the extended inode structure.
4Loss of energy
If small files are stored inline in inodes, then storage overhead is reduced, but inode complexity increases
Solution Approach 1:
The patent applies inlining selectively only to small files that benefit from this storage method, rather than forcing all files into the inline format. This partial application of the inlining technique reduces storage overhead for appropriate files while avoiding unnecessary complexity for larger files that should remain in traditional data block format.
Data Source
AI summary
Techniques are provided for inlining data in inodes of a file system. In an example, data (e.g., a file) is to be written to storage. Where the data is small enough to fit in an inode, it can be written to a dynamic area of the inode. Where dynamic attributes of the inode conflict with storing the data, the dynamic attributes can be spilled to a metadata block. Where the inlined data becomes too large to be stored in the inode, it can be spilled to a data block, and a metadata tree can be written to the inode. Where data that was previously too large to inline is truncated so that now it can be written to the inode, the data is inlined in the inode from a data block.


