File System Recovery Log Layer for Distributed Storage Initialization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Storage systems, especially those based on spinning disks, face performance issues and high costs when handling small and synchronous write operations due to the need for expensive non-volatile read and write memory (NVRAM) in every node, and using SSDs can degrade their lifetime if not managed properly.
Innovation Solution
A file system recovery log layer is integrated to buffer data in a cyclical manner, transforming random requests into synchronous sequential updates, with a dynamic threshold determining when data is written to permanent storage or the recovery log, optimizing performance and reducing SSD degradation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If NVRAM is installed in every node to buffer small writes, then small write performance is improved, but system cost increases significantly
Solution Approach 1:
The patent introduces a recovery log as an intermediary component between the file system and permanent storage. This recovery log buffers small write operations and transforms them into larger sequential writes, eliminating the need for NVRAM in every node while maintaining performance benefits
Solution Approach 2:
The patent merges the buffering function with the recovery log mechanism, combining multiple small write operations into larger sequential writes. This consolidation allows the system to achieve NVRAM-like performance without requiring expensive NVRAM hardware in each node
2Productivity
If SSDs are used to buffer random writes, then small write performance is improved, but SSD lifetime is degraded
Solution Approach 1:
The recovery log acts as a protective intermediary that absorbs random write operations and transforms them into sequential writes. This prevents direct random writes to SSDs, thereby extending SSD lifetime while maintaining performance
Solution Approach 2:
The patent converts the harmful effect of random writes (which degrade SSDs) into a beneficial process by using the recovery log to batch and sequentialize these writes. The random writes are transformed into larger sequential operations that are safe for SSD storage
3Ease of manufacture
If a fixed threshold is used for determining write size, then implementation is simple, but adaptability to varying workloads is reduced
Solution Approach 1:
The patent implements a dynamic threshold mechanism that automatically adjusts the write size threshold based on current system conditions and workload characteristics. This allows the system to adapt to varying workloads while maintaining a relatively simple implementation through automated adjustment
Data Source
AI summary
A method includes integrating a file system recovery log layer in a file system. The file system buffers data in a cyclical manner, and transforms all incoming random requests into a series of synchronous sequential updates. The method determines a length value of a write transaction byte-range for a received write transaction. Upon the length value exceeding a threshold value, data for the write transaction byte-range is written to permanent storage in the file system. Upon the length value being less than the threshold value, the data for the write transaction byte-range is written to a recovery log that is stored in the file system recovery log layer. The threshold value is changed dynamically while the file system is mounted.


