RAID Array Controller Background Task Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvedata integrityVSAvoidbackground task execution time
Core Design Contradiction:
ReliabilityVSLoss of time

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #16Partial or excessive action

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

Engineering Contradiction:
Improvehost I/O performanceVSAvoidbackground task completion time
Core Design Contradiction:
ProductivityVSLoss of time

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.

Inventive Principle:
Principle #10Preliminary action

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.

Inventive Principle:
Principle #23Feedback

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

Engineering Contradiction:
Improvedata storage capacityVSAvoidbackground task execution time
Core Design Contradiction:
Quantity of substanceVSLoss of time

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8140752B2Method of executing a background task and an array controller
Publication Date: 2012.03.20 SEAGATE SYST UK LTD
  • US8140752B2 patent drawing
  • US8140752B2 patent drawing
  • US8140752B2 patent drawing

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.