Read Cache Deduplication for Data Availability and Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional data storage systems inefficiently use read cache space by buffering multiple copies of the same data, leading to displacement of other data and increased latency when delivering subsequent requests.

Innovation Solution

Implementing deduplication techniques to detect and remove duplicate data within the read cache, ensuring only a single copy is maintained, thereby optimizing cache usage and reducing latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If multiple copies of the same data are buffered in the read cache, then data availability for multiple requesters is improved, but read cache space utilization deteriorates and latency increases

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

Solution Approach 1:

The patent merges multiple duplicate data copies into a single copy in the read cache. When duplicate data is detected from different storage locations, the system consolidates them into one cached copy that can serve multiple requesters, thereby improving space utilization while maintaining data availability.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The single cached data copy serves multiple requesters simultaneously, making the cache entry universal. Instead of dedicating separate cache space to each requester's data copy, one cache entry fulfills multiple read requests, improving both space efficiency and reducing displacement of other data.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Reliability

If multiple copies of the same data are buffered in the read cache, then data availability for multiple requesters is improved, but read cache space capacity deteriorates

Engineering Contradiction:
Improvedata availabilityVSAvoidcache space capacity
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges multiple duplicate data copies into a single copy in the read cache. When duplicate data is detected from different storage locations, the system consolidates them into one cached copy that can serve multiple requesters, thereby improving space utilization while maintaining data availability.

Inventive Principle:
Principle #5Merging (Combining)

3Reliability

If multiple copies of the same data are buffered in the read cache, then data availability for multiple requesters is improved, but device complexity increases

Engineering Contradiction:
Improvedata availabilityVSAvoiddeduplication mechanism complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent uses copying of data identifiers (fingerprints or hashes) rather than comparing entire data sets. When a data element is cached, its identifier is stored and compared against incoming data identifiers to detect duplicates, significantly reducing the complexity of the deduplication mechanism.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11068406B2Maintaining a single copy of data within a read cache
Publication Date: 2021.07.20 EMC IP HLDG CO LLC
  • US11068406B2 patent drawing
  • US11068406B2 patent drawing
  • US11068406B2 patent drawing

AI summary

A technique processes read requests from a set of requesters. The technique involves providing, while a first data element and a second data element are stored in secondary storage, the first data element from the secondary storage to the set of requesters in response to a first request to read the first data element from the set of requesters. The technique further involves providing, after the first data element is provided to the set of requesters in response to the first request, the second data element to the set of requesters in response to a second request to read the second data element from the set of requesters. The technique further involves maintaining, in response to detecting that the first data element and the second data element match, a single copy of the first and second data elements in a read cache for subsequent read access.