Batch Failback for Storage Processor Stability
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
High-end storage products face performance degradation and potential service interruptions during boot-up due to the burden of failing back numerous block objects, which can lead to incomplete failback and crashes, especially in environments with high I/O profiling.
Innovation Solution
Implementing a method and apparatus for failing back block objects in batches, where failback operations are performed in stages with a delay time determined based on previous batches' performance to manage the workload and ensure consistent failback across file systems.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If all block objects are failed back immediately during storage processor boot-up, then the storage processor can restore full functionality, but the performance of the storage processor is considerably degraded and service interruptions occur
Solution Approach 1:
The failback process is divided into multiple batches instead of executing all block object failbacks simultaneously. The system processes a first batch of block objects, then a second batch after a delay period, and continues with subsequent batches. This segmentation prevents overwhelming the storage processor during boot-up while ensuring complete functionality restoration.
Solution Approach 2:
The failback operation implements periodic processing with delay intervals between batches. After completing the first batch, the system waits for a predetermined delay period before initiating the second batch, and continues with periodic batches thereafter. This periodic approach allows the storage processor to maintain performance while progressively restoring all block objects.
2Productivity
If block objects are failed back in large numbers simultaneously, then the failback operation completes faster, but the storage processor may crash or cause service interruptions
Solution Approach 1:
The large number of block objects are segmented into multiple manageable batches with controlled sizes. Each batch contains a subset of block objects that can be processed without overwhelming the storage processor. This segmentation maintains failback productivity while ensuring system stability through controlled processing loads.
Solution Approach 2:
The system implements a delay period between batches as a cushioning mechanism to prevent storage processor overload. This predetermined delay allows the processor to stabilize between batches, preventing crashes while maintaining overall failback productivity through the structured batch approach.
3Device complexity
If block objects are failed back without batching, then the process is simpler, but time out of failing back block objects causes production interruption
Solution Approach 1:
The failback process is segmented into organized batches with systematic processing orders. Each batch follows a defined sequence, and the system tracks progress through multiple batches. This structured segmentation manages complexity while reducing total failback time compared to unbatched processing, thereby minimizing production interruption.
Solution Approach 2:
The system performs preliminary organization of block objects into batches before the actual failback operation begins. This preliminary batching prepares the data structures and processing queues in advance, making the subsequent failback execution more efficient and reducing overall production interruption time despite the added batch management complexity.
Data Source
AI summary
Embodiments of the present disclosure disclose a method, an apparatus and a computer program product for failing back block objects in batch by performing failback operations in batch to part of block objects of one or more of existing file systems; determining a delay time required for performing failback operations in a next batch based on the recorded number of block objects that have been failed back in last batches; and performing the failback operations in the next batch to remaining block objects after the delay time.


