RAID Array Controller Background Task Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current RAID systems face performance issues due to long-running background tasks that are not efficiently scheduled, leading to frequent interruptions and prolonged execution times, which negatively affect user-perceived performance as array sizes increase.
Innovation Solution
A method is introduced to record information about data storage locations and changes within a RAID array, allowing background tasks to be executed only on regions where data is stored or has changed since the last task, thereby minimizing the work required and reducing processing burdens.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If background tasks are executed on the entirety of each disk in an array, then data integrity is maintained across all regions, but the execution time increases significantly and host I/O performance is negatively affected
Solution Approach 1:
The patent segments the background task execution by dividing the disk array into multiple regions and processing them separately. The controller identifies specific regions that require background tasks and executes them independently rather than processing the entire array uniformly, thereby reducing overall execution time while maintaining data integrity in processed regions.
Solution Approach 2:
The patent applies partial action by executing background tasks only on necessary regions of the disk array rather than the entirety. The controller determines which regions require processing and limits background task execution to those specific areas, reducing unnecessary work and execution time while maintaining adequate data integrity through targeted processing.
2Productivity
If background tasks are frequently interrupted in favour of foreground tasks, then host I/O performance is improved, but background tasks are not completed and must restart from the beginning
Solution Approach 1:
The patent implements preliminary action by pre-identifying and segmenting regions that require background tasks before execution begins. This allows the system to quickly resume processing from the correct region after an interruption rather than restarting from the beginning, as the controller maintains knowledge of which regions need processing and their current status.
Solution Approach 2:
The patent employs feedback mechanisms where the controller tracks the execution status of background tasks across different regions. When a background task is interrupted, the controller uses this feedback information to resume processing from the appropriate region rather than restarting, thereby reducing completion time while allowing frequent interruptions for host I/O operations.
3Quantity of substance
If the size of arrays increases to meet data storage capacity requirements, then storage capacity is improved, but background task execution time increases proportionally
Solution Approach 1:
The patent segments large disk arrays into multiple manageable regions and processes background tasks on a per-region basis. This segmentation allows the controller to handle large storage capacities by dividing the work into smaller units, reducing the time required to execute background tasks across the entire array while maintaining the ability to process large total storage volumes.
Solution Approach 2:
The patent applies partial action by executing background tasks only on necessary regions of large disk arrays rather than uniformly processing the entire capacity. The controller identifies and processes only the regions that require attention, reducing execution time proportionally while still maintaining data integrity across the full array capacity.
Data Source
AI summary
The present invention provides a method of executing a background task on an array of data storage devices, the method comprising recording information about where in an array data is stored and executing a background task only on those regions of the array in which data is stored.


