Heterogeneous Storage Array Eviction for SSD Wear Management

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Heterogeneous storage systems comprising different types of media, such as solid-state and magnetic storage devices, face challenges in optimizing reliability and performance due to inherent differences in capabilities and attributes, including limited write cycles for solid-state media and sequential access advantages of magnetic media.

Innovation Solution

The implementation of data eviction mechanisms across storage devices, informed by indicators, policy information, and media status, allows for the relocation of data from one storage medium to another, enabling improved reliability, performance, and maintenance tasks, such as wear leveling and defragmentation, by utilizing indicators and policy information to trigger evictions and leveraging DMA engines for data copying when necessary.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If data is stored on solid-state storage media, then random access speed is improved, but write cycle reliability deteriorates

Engineering Contradiction:
Improverandom access speedVSAvoidwrite cycle reliability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system dynamically monitors wear level metrics of solid-state storage media and adaptively adjusts data placement strategies. When a storage device approaches its write cycle limit, the system automatically migrates data to alternative storage media, transforming the static storage allocation into a dynamic, condition-responsive system that preserves both speed and reliability

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system introduces magnetic storage media as an intermediary buffer for data that needs to be migrated from solid-state media. This intermediary layer allows the system to maintain fast random access performance on solid-state media while using magnetic media as a reliable backup destination, effectively mediating between the speed and reliability requirements

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If data is stored on magnetic storage media, then sequential write speed is improved, but access time for random data deteriorates

Engineering Contradiction:
Improvesequential write speedVSAvoidaccess time for random data
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system applies different storage media with optimized characteristics to different data access patterns. Hot data requiring fast random access is placed on solid-state media, while cold data suitable for sequential access is placed on magnetic media. This local optimization of storage quality based on data characteristics resolves the contradiction between sequential write speed and random access time

Inventive Principle:
Principle #3Local quality

3Reliability

If wear leveling is performed on solid-state storage media, then write cycle reliability is improved, but performance deteriorates

Engineering Contradiction:
Improvewrite cycle reliabilityVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system segments the storage architecture into multiple independent storage devices, allowing wear leveling operations to be performed on individual devices without impacting the overall system performance. By distributing data across multiple devices and performing wear leveling in parallel on separate segments, the system maintains reliability while minimizing performance degradation

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8161251B2Heterogeneous storage array optimization through eviction
Publication Date: 2012.04.17 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8161251B2 patent drawing
  • US8161251B2 patent drawing
  • US8161251B2 patent drawing

AI summary

A storage system can comprise storage devices having storage media with differing characteristics. An eviction handler can receive information regarding the state of storage media or of data stored thereon, as well as information regarding application or operating system usage, or expected usage, of data, or information regarding policy, including user-selected policy. Such information can be utilized by the eviction handler to optimize the use of the storage system by evicting data from storage media, including evicting data in order to perform maintenance on, or replace, such storage media, and evicting data to make room for other data, such as data copied to such storage media to facilitate pre-fetching or implement policy. The eviction handler can be implemented by any one or more of processes executing on a computing device, control circuitry of any one or more of the storage devices, or intermediate storage-centric devices.