Deduplication Cache Eviction via Dynamic Scoring
Find Innovative SolutionsGenerate 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
Engineering 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
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
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
2Device complexity
If existing approaches evict digest entries using simple LRU or random policies, then implementation complexity is reduced, but deduplication performance deteriorates
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
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
Data Source
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.


