Dynamic Read Amplification in RAID Stripe Scrubbing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing storage systems face inefficiencies in read amplification and data scrubbing, particularly with small read operations and increasing data sizes, leading to unnecessary resource consumption and decreased performance due to brute force methods like SPEAR, which perform full stripe parity checks during every read operation regardless of need.

Innovation Solution

A dynamic method determines the percentage of potential read amplification for each stripe based on its age relative to the longest safe elapsed time between scrubs, only performing a read scrub when the current age exceeds this threshold, thereby optimizing when read scrubbing occurs during foreground read operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If full stripe parity checks are performed during every read operation (SPEAR method), then data reliability is improved, but read amplification and resource consumption increase

Engineering Contradiction:
Improvedata reliabilityVSAvoidread operation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements dynamic read amplification by adjusting the read width based on the age of the stripe. For younger stripes, a smaller read width is used to minimize read amplification, while for older stripes approaching the scrub interval, a larger read width is used to ensure data reliability. This dynamic adjustment resolves the contradiction by adapting the scrubbing intensity to the actual risk level.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of read width dynamically based on stripe age. By modifying this parameter according to the elapsed time since the last scrub operation, the system optimizes the balance between data reliability and read operation efficiency, avoiding unnecessary full stripe reads for young stripes while ensuring thorough scrubbing for older stripes.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If read scrubbing is performed frequently to ensure data reliability, then data reliability is improved, but unnecessary read amplification occurs

Engineering Contradiction:
Improvedata reliabilityVSAvoidresource consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent implements periodic scrubbing based on stripe age thresholds. Instead of performing scrubbing at fixed intervals or on every read, the system determines the appropriate scrubbing frequency dynamically based on how long it has been since the last scrub operation. This periodic action based on age ensures data reliability while avoiding unnecessary scrubbing operations that would consume resources.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The patent applies partial scrubbing actions by adjusting the read width to match the actual scrubbing need. For stripes that don't require full scrubbing, a partial read width is used, performing only the necessary portion of the scrub operation. This prevents excessive resource consumption while maintaining adequate data reliability.

Inventive Principle:
Principle #16Partial or excessive action

3Reliability

If read width is increased to cover more data for scrubbing, then data reliability is improved, but read amplification increases

Engineering Contradiction:
Improvedata reliabilityVSAvoidread operation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent dynamically adjusts the read width parameter based on the age of the stripe being accessed. For recent stripes, a narrower read width is sufficient, reducing read amplification and access time. For older stripes, the read width is increased to ensure comprehensive scrubbing and data reliability. This dynamic adjustment resolves the time-reliability contradiction.

Inventive Principle:
Principle #15Dynamics

4Speed

If small read operations are performed, then system responsiveness is improved, but read amplification percentage increases

Engineering Contradiction:
Improvesystem responsivenessVSAvoidread amplification efficiency
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The patent implements dynamic read amplification where the actual read width is adjusted based on stripe age and the original read request size. For small reads on young stripes, the system maintains the small read width to preserve responsiveness. For small reads on older stripes, the read width is dynamically increased to perform necessary scrubbing, accepting temporary reduced responsiveness for long-term data integrity.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10990474B1Cost-benefit aware read-amplification in RAID scrubbing
Publication Date: 2021.04.27 SEAGATE TECH LLC
  • US10990474B1 patent drawing
  • US10990474B1 patent drawing
  • US10990474B1 patent drawing

AI summary

A method includes, upon a read operation for a stripe of a storage device, determining a percentage amount of potential read amplification for the read operation. A current age of the stripe in the read operation is determined as a percentage of a longest safe elapsed time between read scrub operations on a stripe of the storage device. A read scrub operation is performed on the stripe when the current age is greater than the percentage amount of potential read amplification.