SSD Cache Management via Stream Segmentation and Preliminary Erase

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

SSD cache memory systems face challenges in data management due to their inability to directly update or overwrite data, requiring erase operations in predefined portions, which can lead to inefficiencies in data storage and retrieval.

Innovation Solution

A cache management process that writes data to SSD cache memory systems in predefined portions, erases full blocks before writing new data, and relocates frequently accessed data to maintain efficiency and ensure data integrity by writing uncommitted data to backend storage before erasing cache blocks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is written to SSD cache memory system in predefined portions, then data storage efficiency is improved, but data retrieval complexity increases due to erase operations required before overwriting

Engineering Contradiction:
Improvedata storage efficiencyVSAvoiddata retrieval complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The SSD cache memory system is divided into multiple data streams that are written to different portions of the cache. Each data stream is managed independently, allowing erase operations to be performed on specific portions without affecting other data streams. This segmentation resolves the contradiction by enabling efficient storage utilization while simplifying the retrieval process through independent stream management.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by writing uncommitted data to backend storage before erasing cache blocks. This ensures data integrity is maintained while preparing the cache for new writes. The preliminary action of destaging data eliminates the need for complex retrieval operations later, as data is already in the appropriate location.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If uncommitted data is written to backend storage before erasing cache blocks, then data integrity is improved, but storage time increases

Engineering Contradiction:
Improvedata integrityVSAvoidstorage time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs the action of writing uncommitted data to backend storage as a preliminary step before erasing cache blocks. This ensures that data integrity is maintained because the data already exists in backend storage before the cache is cleared. The time loss is minimized by performing this operation only when necessary and by using parallel data stream processing.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system discards cached data that has been successfully written to backend storage, allowing the cache block to be erased and reused. This recovering process maintains data integrity (the data is safely stored) while enabling efficient cache utilization. The discarded cache space is quickly recovered for new data streams.

Inventive Principle:
Principle #34Discarding and recovering

3Productivity

If frequently accessed data is relocated to maintain cache efficiency, then system performance is improved, but data movement overhead increases

Engineering Contradiction:
Improvesystem performanceVSAvoiddata movement overhead
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

Data is organized into separate streams that are written to different portions of the cache. Frequently accessed data within each stream can be relocated independently without affecting other streams. This segmentation reduces the overall data movement overhead by allowing targeted relocation operations rather than moving entire cache structures.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically relocates frequently accessed data within the cache structure to optimize performance. Data streams can be moved between different cache portions based on access patterns. This dynamic adjustment improves system performance while minimizing overhead by only moving data that benefits from relocation.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11347395B2Cache management system and method
Publication Date: 2022.05.31 EMC IP HLDG CO LLC
  • US11347395B2 patent drawing
  • US11347395B2 patent drawing
  • US11347395B2 patent drawing

AI summary

A method, computer program product, and computing system for receiving a plurality of data streams on an SSD cache memory system associated with a backend storage system and writing a first of the plurality of data streams to a first portion of the SSD cache memory system.