Intelligent Data Storage Controller for NAND Drive Health Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage management systems in cloud datacenters face challenges in efficiently matching storage IO latency and IOPS requirements of applications with the varying health levels of NAND-based storage drives, leading to suboptimal performance and increased costs due to uneven wear and tear of SSDs.

Innovation Solution

An intelligent data storage system that uses a controller to maintain health information about data blocks across multiple drives, allowing for automatic data block allocation based on quality-of-service (QoS) levels, thereby ensuring that applications with stringent IO latency requirements are matched with healthier data blocks, while extending the useful life of storage drives.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data blocks are allocated without considering health levels, then storage capacity is maximized, but IO latency performance deteriorates

Engineering Contradiction:
Improvestorage capacityVSAvoidIO latency
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The system divides data blocks into different health levels (first, second, third health levels) and allocates them differently based on application requirements. Healthier data blocks are assigned to applications with stringent IO latency requirements, while less healthy blocks are assigned to applications with higher tolerance, thereby resolving the contradiction between maximizing storage capacity and maintaining IO latency performance.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system changes the parameter of data block allocation by introducing health level as a new dimension. Instead of uniform allocation, the controller dynamically adjusts which health level data blocks are allocated to which applications based on their QoS requirements, enabling both high capacity utilization and optimized IO latency performance.

Inventive Principle:
Principle #35Parameter changes

2Speed

If healthier data blocks are allocated to all applications, then IO latency performance is improved, but drive lifespan deteriorates

Engineering Contradiction:
ImproveIO latencyVSAvoiddrive lifespan
Core Design Contradiction:
SpeedVSDuration of action of stationary object

Solution Approach 1:

The system applies local quality by matching data block health levels to specific application requirements. Instead of uniformly allocating healthier blocks to all applications, the controller selectively assigns healthy blocks only to applications that require low IO latency, while directing less healthy blocks to applications with higher tolerance, thus extending overall drive lifespan while maintaining performance where critical.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system enables self-service by allowing the controller to automatically monitor application QoS requirements and dynamically allocate appropriate data blocks without manual intervention. The controller continuously adjusts allocations based on current drive health status and application needs, optimizing both performance and longevity autonomously.

Inventive Principle:
Principle #25Self-service

3Measurement precision

If manual allocation of data blocks is performed, then QoS matching precision is improved, but operational complexity deteriorates

Engineering Contradiction:
ImproveQoS matching precisionVSAvoidoperational complexity
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The system eliminates manual allocation by implementing self-service automation. The controller automatically monitors application QoS requirements, tracks data block health levels, and performs dynamic allocation without human intervention. This maintains high QoS matching precision while completely removing the operational complexity of manual management.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements feedback mechanisms where the controller continuously monitors both application performance requirements and data block health status, using this information to dynamically adjust allocations. This automated feedback loop ensures precise QoS matching while eliminating manual operational complexity.

Inventive Principle:
Principle #23Feedback

4Device complexity

If data blocks are not reallocated based on health changes, then system complexity is reduced, but performance deteriorates

Engineering Contradiction:
Improvesystem complexityVSAvoidIO latency
Core Design Contradiction:
Device complexityVSSpeed

Solution Approach 1:

The system transitions from static to dynamic allocation by continuously monitoring data block health levels and automatically reallocating blocks when health changes occur. The controller adjusts allocations in real-time based on current drive conditions and application requirements, maintaining optimal IO latency performance without requiring complex manual intervention through automated dynamic management.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10223231B1Data storage management
Publication Date: 2019.03.05 SEAGATE TECH LLC
  • US10223231B1 patent drawing
  • US10223231B1 patent drawing
  • US10223231B1 patent drawing

AI summary

Exemplary systems, apparatus, and methods may write data to data blocks defining health levels corresponding to the quality-of-service levels of the data. Further, when health levels of the data blocks change over time, the data may be moved in an attempt to maintain the data in data blocks defining health levels that correspond to the quality-of-service levels of the data.