Deduplication Cache Eviction via Dynamic Scoring

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing approaches to managing deduplication caches are inflexible and ineffective, leading to inefficient retention and eviction of digest entries, which affects cache performance in data storage systems.

Innovation Solution

Assigning each digest entry to multiple entry lists based on deduplicability scores, with entries in lower-scoring lists being evicted more quickly, and using reinforcement learning to adapt to changes in deduplicability over time to maximize cache hits.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If a digest database is limited to a certain maximum size in cache memory, then memory resource utilization is improved, but cache hit rate deteriorates

Engineering Contradiction:
Improvecache memory sizeVSAvoidcache hit rate
Core Design Contradiction:
Quantity of substanceVSReliability

Solution Approach 1:

The patent implements dynamic eviction policies that adapt to changing deduplicability characteristics of data. Instead of static eviction, the system continuously scores entry lists based on deduplicability and adjusts which entries are evicted, allowing the cache to dynamically optimize between size constraints and hit rate performance

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of eviction priority by scoring entry lists based on deduplicability. Entries are assigned to different entry lists based on their deduplicability scores, and eviction targets are selected based on these scores rather than simple LRU or random eviction, thereby optimizing cache retention for high-deduplicability data

Inventive Principle:
Principle #35Parameter changes

2Device complexity

If existing approaches evict digest entries using simple LRU or random policies, then implementation complexity is reduced, but deduplication performance deteriorates

Engineering Contradiction:
Improveeviction policy complexityVSAvoiddeduplication performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent changes the eviction parameter from simple temporal recency (LRU) or randomness to deduplicability-based scoring. Each entry list is scored based on the deduplicability of its contents, and eviction decisions are made based on these scores, thereby improving deduplication performance while maintaining manageable complexity through structured entry list management

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The digest cache is segmented into multiple entry lists based on deduplicability characteristics. This segmentation allows different eviction strategies to be applied to different segments, with lower-scoring entry lists being evicted more aggressively than higher-scoring ones, thereby optimizing overall cache performance

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11086794B2Managing eviction from a deduplication cache
Publication Date: 2021.08.10 EMC IP HLDG CO LLC
  • US11086794B2 patent drawing
  • US11086794B2 patent drawing
  • US11086794B2 patent drawing

AI summary

A technique for managing a deduplication digest cache (DDC) includes assigning each digest entry of the DDC to one of multiple entry lists, scoring the entry lists based at least in part on the deduplicability of the data represented by the digest entries in the entry lists, and selecting for eviction from the DDC entries assigned to the lowest-scoring entry list. In this manner, entries assigned to entry lists that perform more poorly in terms of deduplicability tend to be evicted more quickly than entries assigned to entry lists that perform better.