Storage Controller Tiering to Minimize Chunk Movement

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing data tiering systems face challenges in minimizing data movement between storage tiers, leading to inefficient use of resources and high costs due to over-provisioning and rebuild spare capacity, particularly in higher tiers, which affects the raw to usable ratio and introduces write amplification.

Innovation Solution

A storage controller that manages data tiering by moving memory chunks between tiers, using an index to track chunk status and reducing over-provisioning and rebuild spare costs by utilizing a second tier's available space, enabling burst writes and optimizing data movement.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If data is moved between storage tiers using existing tiering algorithms, then data placement accuracy is improved, but data movement frequency increases causing repeated back-and-forth movements

Engineering Contradiction:
Improvedata placement accuracyVSAvoiddata movement efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The system performs preliminary actions by proactively moving data to lower tiers before it is actually needed, based on predictive algorithms that analyze access patterns. This prevents the need for frequent reactive movements back and forth, as data is already in the optimal location when access is predicted. The patent implements this through predictive tiering that moves data based on forecasted access requirements rather than waiting for actual access requests.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If over-provisioning and rebuild spare capacity are increased in higher tiers, then reliability and rebuild capability are improved, but the raw to usable ratio deteriorates and storage cost increases

Engineering Contradiction:
Improverebuild capabilityVSAvoidraw to usable ratio
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent applies dimensionality change by moving the over-provisioning and rebuild spare capacity requirements from the expensive higher tiers to the cheaper lower tiers. Instead of maintaining redundant capacity in each tier, the system consolidates this function in the lowest tier where capacity is most abundant and least costly. This allows higher tiers to operate with near 100% usable capacity while lower tiers absorb the redundancy requirements.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Loss of energy

If garbage collection is performed in log structured arrays, then write amplification is reduced, but the complexity of managing free stripes and chunks increases

Engineering Contradiction:
Improvewrite amplificationVSAvoidgarbage collection management complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent merges the garbage collection function with the lower-tier storage operations by consolidating free stripe management at the lowest tier. Instead of each tier independently managing its own garbage collection, the system combines these operations at the bottom tier where capacity is most abundant. This unified approach reduces overall write amplification while simplifying management complexity by centralizing the garbage collection logic in one location rather than distributing it across multiple tiers.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS12498871B2Storage controller and a method for improved memory handling
Publication Date: 2025.12.16 TOGA NETWORKS LTD
  • US12498871B2 patent drawing
  • US12498871B2 patent drawing
  • US12498871B2 patent drawing

AI summary

A storage controller controls a storage memory where the storage memory includes at least one first tier memory and at least one second tier memory. The first tier memory has a higher access speed than the second tier memory. The storage memory is being arranged to store memory blocks of data grouped in memory chunks associated with an index. A memory chunk indicates the size of a memory operation. The storage controller is configured to determine that a memory chunk is to be moved from the first tier memory to the second tier memory, and write the memory chunk to the second tier memory. The storage controller is configured to receive a read request for the memory chunk and in response thereto determine that the memory chunk is current in the first tier memory, and read the memory chunk from the first tier memory.