Distributed Storage Recovery Plan Generation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed storage systems face challenges in efficiently managing recovery processes, particularly in avoiding cascading failures and minimizing load on remaining active nodes during node failures, which can impact client operations and data availability.
Innovation Solution
A recovery system that analyzes real-time system metrics and applies user-defined policies to generate a recovery plan, prioritizing critical data and optimizing replication to ensure minimal impact on client operations and maintain high availability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If replicas are copied to new nodes to maintain replication factor after node failure, then fault tolerance and high availability are improved, but load on remaining active nodes increases and may cause cascading failures
Solution Approach 1:
The system proactively identifies storage nodes with high failure probability based on monitored metrics (disk health, I/O performance, network status) before actual failures occur. Recovery plans are prepared in advance by pre-selecting target nodes and pre-stage data transfers, so that when failures occur, the system can execute recovery without imposing heavy immediate load on active nodes.
Solution Approach 2:
The recovery process is divided into multiple phases: (1) failure prediction and early warning phase, (2) recovery plan generation phase with target node selection, (3) staged data replication phase where data is copied in controlled increments. This segmentation allows the system to manage recovery load systematically rather than all at once, preventing cascading failures.
2Reliability
If recovery processes are executed immediately after node failure, then data availability is restored quickly, but client operations are impacted due to system load
Solution Approach 1:
The system dynamically adjusts recovery execution timing and pace based on real-time monitoring of system load and client operation patterns. Recovery operations are scheduled during periods of lower client activity or executed in background threads with adjustable priority, allowing the system to balance recovery speed with client performance requirements.
Solution Approach 2:
The system continuously monitors system metrics including client operation performance, node load, and recovery progress. Based on this feedback, the recovery execution strategy is automatically adjusted - if client performance degrades, recovery speed is reduced or paused; if system capacity allows, recovery proceeds faster to restore data availability.
3Reliability
If all data is recovered with equal priority after failure, then complete data restoration is achieved, but critical data recovery is delayed
Solution Approach 1:
The system assigns different recovery priorities to different data portions based on their criticality. Data is tagged with priority levels (e.g., high, medium, low) based on factors such as access frequency, business importance, and replication status. The recovery process selectively restores high-priority data first to critical storage nodes, ensuring that the most important data is available fastest while still completing full restoration eventually.
Data Source
AI summary
Embodiments include obtaining at least one system metric of a distributed storage system, generating one or more recovery parameters based on the at least one system metric, identifying at least one policy associated with data stored in a storage node of a plurality of storage nodes in the distributed storage system, and generating a recovery plan for the data based on the one or more recovery parameters and the at least one policy. In more specific embodiments, the recovery plan includes a recovery order for recovering the data. Further embodiments include initiating a recovery process to copy replicas of the data from a second storage node to a new storage node, wherein the replicas of the data are copied according to the recovery order indicated in the recovery plan.


