Storage Controller Gap-Based Defragmentation Logic

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The existing storage system experiences deterioration in reading performance due to random data arrangement caused by frequent host reference requests, leading to increased I/O waiting and reduced defragmentation processing efficiency.

Innovation Solution

A storage system with a controller that determines the number of gaps among data blocks and performs defragmentation only when valid, writing data blocks into continuous address areas to maintain physical continuity and reduce unnecessary defragmentation loads.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If data is written into a new area of the disk during host reference requests, then data arrangement becomes more random, but reading performance from the disk deteriorates

Engineering Contradiction:
Improvedata arrangement flexibilityVSAvoidreading performance
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The patent applies local quality by making different parts of the storage system behave differently: when defragmentation is valid (gaps <= threshold), data blocks are rewritten into continuous areas to improve local reading performance; when defragmentation is invalid (gaps > threshold), the original data arrangement is preserved to avoid unnecessary random writes. This conditional local optimization resolves the contradiction between data arrangement flexibility and reading performance.

Inventive Principle:
Principle #3Local quality

2Stability of the object's composition

If peripheral data is always written from the disk during host reference requests, then data continuity is improved, but host request response performance deteriorates due to I/O waiting

Engineering Contradiction:
Improvedata continuityVSAvoidI/O waiting time
Core Design Contradiction:
Stability of the object's compositionVSLoss of time

Solution Approach 1:

The patent applies partial action by selectively performing defragmentation only when the number of gaps among data block addresses is less than or equal to a predetermined threshold. Instead of always rewriting peripheral data (excessive action), the system performs partial defragmentation based on the gap threshold condition, thereby improving data continuity only when necessary and avoiding unnecessary I/O waiting that would deteriorate host request response performance.

Inventive Principle:
Principle #16Partial or excessive action

3Stability of the object's composition

If defragmentation processing is performed frequently, then data continuity is improved, but processing speed of defragmentation decreases due to system load

Engineering Contradiction:
Improvedata continuityVSAvoiddefragmentation processing speed
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The patent applies parameter changes by using the gap number (difference between expected continuous address and actual address) as a control parameter. Instead of performing defragmentation based on fixed schedules or continuous monitoring (which would slow down processing), the system changes the approach to evaluate defragmentation validity only when the gap parameter is within the threshold, thereby maintaining data continuity while preserving defragmentation processing speed by avoiding unnecessary operations.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10649691B2Storage system
Publication Date: 2020.05.12 HITACHI VANTARA LTD
  • US10649691B2 patent drawing
  • US10649691B2 patent drawing
  • US10649691B2 patent drawing

AI summary

An example of storage system obtains a reference request of a reference request data block that is included in the content and is stored in the medium area. The storage system determines a number of gaps among addresses, in the medium area, of a plurality of data blocks continuous in the content including the reference request data block. The storage system determines, based on the number of gaps, whether or not defrag based on the plurality of data blocks is valid. The storage system writes, when the defrag is determined to be valid, the plurality of data blocks read from the medium area to the memory area, into continuous address areas of the medium area.