Concurrent Read Processing for Storage Cache Misses

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current data storage systems face inefficiencies in handling read operations, particularly when metadata is not cached, leading to increased latency and reduced performance due to the need to retrieve data from slower non-volatile memory.

Innovation Solution

A method is introduced where, upon determining a read operation is a miss, concurrent requests are issued to read both the data and non-location metadata from physical storage, with data validation using the metadata, and the data is then stored in cache for faster access in subsequent requests.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is retrieved from non-volatile memory for read operations, then data persistence is ensured, but access speed decreases

Engineering Contradiction:
Improvedata persistenceVSAvoiddata access speed
Core Design Contradiction:
ReliabilityVSSpeed

Solution Approach 1:

The storage system is segmented into two distinct parts: volatile memory for high-speed data access and non-volatile memory for persistent storage. This segmentation allows the system to leverage the speed advantage of volatile memory for active data retrieval while maintaining the reliability of non-volatile memory for data persistence, resolving the contradiction between access speed and data persistence.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Volatile memory acts as an intermediary between the host system and non-volatile memory. When data is needed, the system first retrieves it from volatile memory (fast access), and only when necessary does it write to non-volatile memory (persistence). This intermediary layer enables the system to achieve both high-speed access and reliable persistence without directly confronting the speed-persistence trade-off.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Quantity of substance

If metadata is not cached, then cache memory is saved for data storage, but read operation latency increases

Engineering Contradiction:
Improvecache memory availabilityVSAvoidread operation latency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The system performs preliminary action by proactively loading metadata into volatile memory cache before it is actually needed for read operations. This anticipatory caching of metadata ensures that when data read requests arrive, the necessary metadata is already available in the fast volatile memory, eliminating latency without compromising cache availability for data storage.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The cache management system dynamically adjusts its behavior based on access patterns and requirements. It selectively caches metadata only when beneficial, and dynamically allocates cache space between metadata and data based on current system needs. This dynamic approach allows the system to optimize the balance between cache memory availability and read operation performance in real-time.

Inventive Principle:
Principle #15Dynamics

3Device complexity

If sequential read requests are issued for data and metadata, then processing simplicity is maintained, but total processing time increases

Engineering Contradiction:
Improveprocessing simplicityVSAvoidtotal processing time
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The system issues read requests for both data and metadata concurrently rather than sequentially, maintaining continuous useful action during the read operation. By overlapping the retrieval of data and metadata in time, the system eliminates idle waiting periods and reduces total processing time while keeping the processing logic relatively simple through parallel request issuance.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The system performs preliminary action by issuing read requests for both data and metadata simultaneously or in advance, rather than waiting for one to complete before starting the other. This preliminary parallel action significantly reduces the total time required for read operations while maintaining processing simplicity through standardized concurrent request handling.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10019359B1Optimized read processing
Publication Date: 2018.07.10 EMC IP HLDG CO LLC
  • US10019359B1 patent drawing
  • US10019359B1 patent drawing
  • US10019359B1 patent drawing

AI summary

Described are techniques for processing I/O operations. A read operation is received to read first data from a first location. It is determined whether the read operation is a read miss and whether non-location metadata for the first location is stored in cache. Responsive to determining that the read operation is a read miss and that the non-location metadata for the first location is not stored in cache, first processing is performed that includes issuing concurrently a first read request to read the first data from physical storage and a second read request to read the non-location metadata for the first location from physical storage.