Cacheless Read and Deferred Caching for Storage Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current caching techniques in data storage systems face inefficiencies in handling read misses, particularly when the back-end component is busy, leading to increased latency and resource utilization challenges.

Innovation Solution

Implementing cacheless read processing and deferred caching processing based on the busyness level of the back-end component, where cacheless read processing involves directly retrieving and returning data without caching, and deferred caching processing involves asynchronous copying of data to cache, with dynamic adjustment of processing percentages based on busyness trends.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If deferred caching processing is used to service read misses, then cache hit rate is improved, but I/O response time increases due to asynchronous copying overhead

Engineering Contradiction:
Improvecache hit rateVSAvoidI/O response time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system dynamically adjusts the percentage of read misses processed using cacheless read versus deferred caching based on real-time back-end component busyness levels. When busyness exceeds a threshold, the system increases cacheless read processing to reduce response time; when busyness is low, it increases deferred caching to improve cache hit rate. This dynamic adaptation resolves the contradiction by adjusting the balance between the two conflicting objectives based on system conditions.

Inventive Principle:
Principle #15Dynamics

2Loss of time

If cacheless read processing is used to service read misses, then I/O response time is reduced, but cache hit rate decreases due to lack of data caching

Engineering Contradiction:
ImproveI/O response timeVSAvoidcache hit rate
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The system changes the parameter of caching behavior based on back-end component busyness. When busyness is high, the system parameter shifts toward cacheless read processing to minimize response time. When busyness is low, the parameter shifts toward deferred caching to maximize cache hit rate. This parameter change strategy allows the system to optimize for the appropriate objective based on current system state.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If deferred caching processing is used for all read misses, then data is cached for future requests, but back-end component utilization increases leading to bottlenecks

Engineering Contradiction:
Improvecache hit rateVSAvoidback-end component utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system implements feedback control by monitoring back-end component busyness levels and using this information to adjust the processing strategy for read misses. When busyness feedback indicates high utilization, the system reduces deferred caching operations to prevent further bottlenecks. When feedback shows low utilization, the system increases deferred caching to improve cache hit rate. This feedback mechanism resolves the contradiction by adapting caching behavior to system capacity.

Inventive Principle:
Principle #23Feedback

4Speed

If cacheless read processing is used for all read misses, then system responsiveness is improved, but future read performance deteriorates due to reduced cache utilization

Engineering Contradiction:
Improvesystem responsivenessVSAvoidfuture read performance
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The system dynamically adjusts the balance between cacheless read and deferred caching based on back-end component busyness trends. When busyness is low or decreasing, the system increases deferred caching to build cache content for future performance. When busyness is high or increasing, the system prioritizes cacheless read to maintain responsiveness. This dynamic adjustment resolves the contradiction by optimizing for the appropriate objective based on current system conditions.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9235516B1Techniques using cacheless read and deferred caching
Publication Date: 2016.01.12 EMC IP HLDG CO LLC
  • US9235516B1 patent drawing
  • US9235516B1 patent drawing
  • US9235516B1 patent drawing

AI summary

Described are techniques for processing data operations. A read request for first data is received at a data storage system. It is determined whether the read request results in a cache hit whereby the first data is stored in a cache of the data storage system, or whether the read request otherwise results in a cache miss. If the read request results in a cache miss, processing is performed to determine determining whether to perform cacheless read processing or deferred caching processing to service the read request. Determining whether to perform cacheless read processing or deferred caching processing is performed in accordance with criteria including a measurement indicating a level of busyness of a back-end component used to retrieve from physical storage any portion of the first data not currently stored in the cache.