Space-Leveling Storage Block Container Assignment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In storage architectures with host data streams assigned to storage blocks from a subset of storage block containers, the issue of 'space leveling' arises when only a subset of storage block containers is active, leading to suboptimal write performance due to inadequate write parallelism and high utilization, causing degradation in storage system performance.

Innovation Solution

A space-leveling scheme is implemented using a data storage device with a controller and a block container assignment queue (BCAQ), where the controller randomly selects a storage block container for assigning host data streams, introducing a delay by storing them in the queue until a next storage block container switching event occurs, allowing for randomized assignment across multiple containers.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If host data streams are assigned to storage blocks from a subset of storage block containers, then the storage system can operate with simplified management, but only a subset of storage block containers remains active leading to degradation of write performance

Engineering Contradiction:
Improvestorage block container managementVSAvoidwrite performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent implements dynamic selection of storage block containers by randomly selecting active containers from the plurality of storage block containers. This dynamic approach allows the system to adaptively utilize more storage block containers based on availability, thereby improving write performance while maintaining manageable complexity through randomized assignment rather than complex deterministic scheduling

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of container selection from static/deterministic to dynamic/random. By randomly selecting which storage block containers to activate and assign host data streams to, the system can utilize a larger portion of available containers, improving parallelism and write performance without requiring complex management logic

Inventive Principle:
Principle #35Parameter changes

2Quantity of substance

If storage system operates with high utilization, then capacity efficiency is improved, but only a subset of storage block containers remains active in host data write path causing performance degradation

Engineering Contradiction:
Improvestorage capacity utilizationVSAvoidwrite performance
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

Under high utilization conditions, the system dynamically selects from all available storage block containers including those that would otherwise be inactive. The random selection mechanism ensures that even when capacity is highly utilized, the system can activate additional containers for write operations, maintaining both high capacity utilization and good write performance through increased parallelism

Inventive Principle:
Principle #15Dynamics

3Ease of operation

If deterministic mapping is used for host data stream to storage block container assignment, then assignment is simple and predictable, but subset invalidation occurs leading to performance degradation

Engineering Contradiction:
Improveassignment simplicityVSAvoidwrite performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent inverts the traditional deterministic mapping approach by using random selection to assign host data streams to storage block containers. Instead of following a predictable pattern that can lead to subset invalidation, the random assignment disperses host data streams across different containers in a non-deterministic manner, preventing the formation of invalidatable subsets while maintaining assignment simplicity

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The system changes the assignment parameter from deterministic to random. This parameter change transforms the assignment behavior from predictable patterns that cause subset invalidation to random distribution that prevents such invalidation, thereby improving write performance while keeping the assignment mechanism simple and easy to operate

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11922036B2Host data stream assignment with space-leveling across storage block containers
Publication Date: 2024.03.05 SANDISK TECHNOLOGIES LLC
  • US11922036B2 patent drawing
  • US11922036B2 patent drawing
  • US11922036B2 patent drawing

AI summary

Host data stream assignment with space-leveling across storage block containers. In one example, a data storage device including an electronic processor that, when executing a space-leveling scheme, is configured to receive a first host data stream, store the first host data stream in a block container assignment queue (BCAQ), detect a next storage block container switching event, responsive to detecting the next storage block container switching event, randomly select a location of the BCAQ, responsive to randomly selecting the location of the BCAQ, assign a second host data stream located at the location of the BCAQ that is selected to a storage block container of a memory, and control the memory to store the second host data stream in the storage block container that is assigned.