Inode Data Inlining for Storage Overhead Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvestorage capacityVSAvoidstorage overhead
Core Design Contradiction:
Quantity of substanceVSLoss of energy

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.

Inventive Principle:
Principle #5Merging (Combining)

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.

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

2Reliability

If data is stored in separate data blocks, then data integrity is maintained, but computing resources are consumed and performance decreases

Engineering Contradiction:
Improvedata integrityVSAvoidcomputing resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

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.

Inventive Principle:
Principle #5Merging (Combining)

3Ease of operation

If unused space in inodes is allocated for metadata, then metadata management is optimized, but space efficiency decreases

Engineering Contradiction:
Improvemetadata managementVSAvoidspace efficiency
Core Design Contradiction:
Ease of operationVSQuantity of substance

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.

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

4Loss of energy

If small files are stored inline in inodes, then storage overhead is reduced, but inode complexity increases

Engineering Contradiction:
Improvestorage overheadVSAvoidinode structure complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

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.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10942663B2Inlining data in inodes
Publication Date: 2021.03.09 EMC IP HLDG CO LLC
  • US10942663B2 patent drawing
  • US10942663B2 patent drawing
  • US10942663B2 patent drawing

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.