Flash-Based Data Caching via Volatile and Non-Volatile Solid-State Layers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage systems, particularly in disk arrays, face inefficiencies in data redundancy and performance due to the limitations of conventional hard disk drives, which result in high electromechanical delays and failures, and existing solid-state solutions do not effectively leverage the potential of flash-based memory for cache systems to enhance data availability and access speed.

Innovation Solution

A data storage system incorporating a volatile solid-state cache memory system, a non-volatile electromechanical memory system, and a non-volatile solid-state cache memory system, where the latter is configured as a RAID device using flash solid-state storage devices to store coded data, reducing the need for frequent access to slower electromechanical memory and minimizing write operations through log-based RAID approaches.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If conventional hard disk drives are used for data storage, then data capacity can be maintained, but electromechanical delays and failures increase, reducing access speed and reliability

Engineering Contradiction:
Improvedata access speedVSAvoidsystem reliability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The storage system is segmented into multiple layers: volatile solid-state cache, non-volatile solid-state flash cache, and non-volatile electromechanical storage. Each layer handles different types of data access requests, with faster layers handling frequent accesses and slower layers providing bulk capacity. This segmentation resolves the contradiction by providing both high-speed access paths and reliable bulk storage.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Solid-state cache devices are introduced as intermediary layers between the electromechanical disk drives and the processing system. These intermediaries buffer data transfers, providing high-speed access to frequently used data while the slower disk drives maintain the bulk storage capacity, thus improving both speed and reliability without sacrificing capacity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of time

If solid-state memory is used to replace hard disk drives, then electromechanical delays are eliminated, but the cost and complexity of the system increases

Engineering Contradiction:
Improveseek time and latencyVSAvoidstorage system complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

Different portions of the storage hierarchy have different qualities: volatile cache provides fastest access for hot data, non-volatile flash cache provides fast access for warm data, and electromechanical drives provide capacity for cold data. This local quality differentiation resolves the contradiction by applying solid-state technology only where it provides the most benefit while maintaining cost-effectiveness.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system dynamically manages data across different storage layers based on access patterns. Frequently accessed data is automatically cached in faster solid-state memory, while less frequently accessed data resides in electromechanical storage. This dynamic adaptation allows the system to achieve low latency for active data while maintaining overall system simplicity and cost-effectiveness.

Inventive Principle:
Principle #15Dynamics

3Reliability

If data is stored in multiple locations for redundancy, then data availability improves, but the number of write operations increases, causing the 'RAIDS Write Penalty'

Engineering Contradiction:
Improvedata availabilityVSAvoidwrite operation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

Data is pre-processed and staged in volatile solid-state cache before being written to the final storage destination. This preliminary action allows write operations to be buffered and optimized, reducing the immediate write penalty while maintaining redundancy. The cache absorbs write operations temporarily, allowing them to be batched or optimized before reaching the RAID array.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The volatile solid-state cache acts as an intermediary write buffer between the processing system and the RAID array. Write operations are first directed to this fast, non-persistent storage, which absorbs the write penalty without impacting the underlying electromechanical storage. This intermediary layer decouples write operations from the redundant storage operations, improving write efficiency while maintaining data availability through the cache.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS8099554B1System and method for flash-based data caching
Publication Date: 2012.01.17 EMC IP HLDG CO LLC
  • US8099554B1 patent drawing
  • US8099554B1 patent drawing
  • US8099554B1 patent drawing

AI summary

A system, method and computer program product for receiving on a non-volatile, solid-state, cache memory system, a data segment, including a plurality of data elements, from one or more of a volatile, solid-state, cache memory system and a non-volatile, electromechanical memory system. The data segment may be stored on the non-volatile, solid-state, cache memory system. Each data element includes one or more data extents.