Coarse Granularity Cache Eviction Scoring
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional cache eviction policies based solely on recency are ineffective for coarse-granularity cache management, leading to the removal of relevant data and decreased cache hit rates, as they fail to accurately assess the relevance of data within cache units.
Innovation Solution
Implement a cache management system that scores cache units based on multiple criteria such as segment validity, age, priority, and access count, and copies forward relevant segments from evicted cache units to maintain data relevance and optimize cache performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If conventional LRU eviction policy is used for coarse-granularity cache management, then cache unit eviction is simplified, but relevant data within cache units is incorrectly removed and cache hit rate decreases
Solution Approach 1:
The patent segments the cache unit into individual segments and tracks their access histories separately. Instead of treating the entire cache unit as a single entity for eviction decisions, each segment is independently evaluated based on its access patterns, allowing relevant segments to be retained while evicting only truly cold segments.
Solution Approach 2:
The patent applies different eviction criteria to different segments within a cache unit based on their individual access histories and characteristics. Each segment is evaluated locally for its relevance and access patterns, rather than applying a uniform LRU policy across the entire cache unit, thereby preserving locally relevant data.
2Device complexity
If cache units are evicted based on recency alone, then eviction decision-making is simplified, but the ability to accurately assess data relevance is compromised
Solution Approach 1:
The patent performs preliminary tracking and scoring of each segment's access history before eviction decisions are made. Access counts, recency, and other metrics are accumulated in advance, allowing for precise relevance assessment at the time of eviction without adding complexity to the eviction decision-making process itself.
Solution Approach 2:
The patent implements feedback mechanisms by continuously monitoring segment access patterns and using this information to update segment scores and eviction priorities. The system learns from actual access behavior to improve its relevance assessment accuracy over time, allowing for more precise eviction decisions.
3Productivity
If all segments in a cache unit are evicted together, then eviction operation is simplified, but data loss increases when only some segments are cold
Solution Approach 1:
The patent divides the cache unit into separable segments that can be independently managed and evicted. This segmentation allows the system to identify and evict only the cold segments while retaining hot segments, preventing unnecessary data loss while maintaining operational efficiency through automated segment-level management.
Solution Approach 2:
The patent selectively discards only the cold segments that are truly ready for eviction while recovering and retaining segments that are still relevant. This selective approach prevents the complete loss of data from cache units, allowing relevant segments to be preserved for future access.
Data Source
AI summary
A data processing system and methods for performing cache eviction are disclosed. An exemplary method includes maintaining a metadata set for each cache unit of a cache device at a sub-cache unit granularity, wherein the cache device comprises a plurality of cache units, each cache unit having a plurality of segments, wherein the cache device is accessible by a cache client at a segment granularity. The exemplary method further includes in response to determining that a cache eviction is to be performed, selecting a predetermined number of cache units from the plurality of cache units, determining a score for each of the selected cache units based on the respective metadata set maintained at the sub-cache unit granularity, and evicting one or more of the selected predetermined number of cache units based on their scores. The metadata may include, for example, last access time (LAT) metadata, an access count, and hotness metadata, and metadata may be maintained at a segment or a segment group granularity.


