Temporary Metadata Structures for Fast Storage Node Recovery
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In distributed file systems, the failure of a storage node can lead to IO stall time due to the time-consuming process of loading meta-data from slower storage units, causing application failures and delayed resumption of host access requests.
Innovation Solution
The implementation of temporary meta-data data structures, such as temporary exception tables, allows for the expedited resumption of host access requests by creating a temporary data structure to flag pending recovery operations and lock storage units, while loading the actual meta-data structures occur in the background.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If meta-data structures are loaded from slower storage units during node failure recovery, then fault tolerance is achieved, but IO stall time increases
Solution Approach 1:
The patent applies preliminary action by creating temporary meta-data structures before the actual meta-data is fully loaded from storage units. The temporary structures are initialized with placeholder or partial data, allowing the system to proceed with recovery operations and resume host access requests before the complete meta-data loading finishes. This eliminates the blocking behavior where host access had to wait for slow meta-data reads to complete.
Solution Approach 2:
The temporary meta-data structures serve as an intermediary between the failed node's original meta-data and the recovery process. These temporary structures allow the system to maintain operational state and enable host access requests during the recovery period, acting as a bridge that decouples the critical path (host access resumption) from the non-critical path (complete meta-data loading from slower storage).
2Stability of the object's composition
If host access requests are blocked until meta-data is fully loaded, then data consistency is maintained, but productivity decreases
Solution Approach 1:
The system performs preliminary action by initializing temporary meta-data structures before resuming host access requests. These temporary structures provide sufficient data consistency for ongoing operations while the actual meta-data is being loaded from storage units in the background. This allows the system to maintain stability during the transition period without blocking productivity.
Solution Approach 2:
The patent applies dynamics by transitioning from a static blocking approach to a dynamic progressive loading approach. The temporary meta-data structures are updated progressively as actual data is loaded from storage units, allowing the system to adapt between different states: initial temporary structure state for quick resumption, and progressive updates for maintaining consistency. This dynamic approach allows host access to resume immediately while gradually improving data completeness in the background.
Data Source
AI summary
Examples disclosed herein relate to processing transaction logs for storage nodes. Multiple nodes manage transactions for storage units including transaction logs. A node assumes control over a set of storage units and blocks host access requests to the storage units. Transaction logs are processed to determine a subset of the set to perform recovery for. In this example, the subset of storage units are locked. Host access requests are resumed.


