Storage Control Block Segmentation for Namespace Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Storage devices face performance degradation due to garbage collection and compaction processes, which are triggered by varying usage patterns of different hosts sharing the same storage device, leading to increased processing overhead and reduced access times.

Innovation Solution

The solution involves managing control blocks by dedicating separate blocks for each logical namespace with similar data-pattern usage, utilizing sub-blocks, and employing machine learning to evaluate usage patterns and optimize control block allocation, thereby minimizing garbage collection and compaction.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a common pool of control blocks is used for all namespaces, then device complexity is reduced and ease of operation is improved, but garbage collection and compaction processes are triggered more frequently, worsening productivity and increasing processing overhead

Engineering Contradiction:
Improvecontrol block management complexityVSAvoidstorage device performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments the common pool of control blocks into separate dedicated control blocks for each namespace. This segmentation allows each namespace to have its own control block pool, eliminating the need for garbage collection and compaction across a shared pool, thereby resolving the contradiction between simplified management and performance degradation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by tailoring control block management to specific namespace usage patterns. Machine learning models analyze individual namespace characteristics and allocate control blocks accordingly, allowing each namespace to have optimized control block allocation rather than a uniform approach, thus improving performance without excessive complexity.

Inventive Principle:
Principle #3Local quality

2Adaptability or versatility

If control blocks are dynamically allocated and managed in a common pool, then adaptability to varying usage patterns is improved, but garbage collection processes are triggered, worsening access times and productivity

Engineering Contradiction:
Improveusage pattern adaptabilityVSAvoidaccess time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent performs preliminary action by pre-allocating dedicated control blocks to each namespace based on predicted usage patterns. Machine learning models analyze historical data to anticipate future namespace requirements and allocate control blocks in advance, eliminating the need for dynamic garbage collection during operation and reducing access time delays.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements self-service by enabling each namespace to independently manage its own dedicated control blocks without interfering with other namespaces. This self-contained management eliminates the need for system-wide garbage collection processes, maintaining adaptability while preventing access time degradation.

Inventive Principle:
Principle #25Self-service

3Productivity

If machine learning processes are used to evaluate and optimize control block allocation, then productivity and access times are improved, but device complexity and processing overhead increase

Engineering Contradiction:
Improvestorage device performanceVSAvoidcontrol block management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary machine learning model that sits between the namespace operations and control block management. This intermediary analyzes usage patterns and makes intelligent allocation decisions, improving performance by optimizing control block distribution while encapsulating the complexity within the ML model rather than requiring complex management logic throughout the entire system.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11775200B2Control block management in storage devices
Publication Date: 2023.10.03 SANDISK TECHNOLOGIES LLC
  • US11775200B2 patent drawing
  • US11775200B2 patent drawing
  • US11775200B2 patent drawing

AI summary

Storage devices store not only host data, but also control data related to operations of the storage device associated with the data. Control data is stored within blocks of memory called control blocks. As storage devices are configured to communicate with numerous hosts and namespaces, proper management of the available control blocks can avoid numerous problems such as mixed control block usage that punish certain hosts based on actions of other, non-related hosts. Methods and devices that efficiently manage control blocks include a control block management logic configured to process a request to generate a new namespace and parse the namespace request to determine the number of control blocks required. These separate control blocks for the requested namespace can be partitioned. Finally, control block activity for the requested namespace is directed only to the partitioned control blocks. Thus, the various control block activity between hosts is separate and not mixed.