Cache Management via Access Frequency-Based SSD Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current SSD cache systems, such as read-preference and RAID-1 SSD caches, face inefficiencies in performance and capacity utilization due to hardware limitations and access frequency management, leading to suboptimal response times and load imbalances.

Innovation Solution

A cache management method that determines access frequency for each cache page and organizes them into multiple queues, allocating more solid-state disks to pages with higher access frequencies, ensuring that frequently accessed data has multiple copies across SSDs for faster access and redundancy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If DRAM cache is used to improve access speed, then data access speed is improved, but cost per GB increases significantly and capacity is limited to several GBs or tens of GBs

Engineering Contradiction:
Improvedata access speedVSAvoidcache capacity
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent segments the cache into multiple levels: DRAM cache for hot data (high speed, small capacity) and SSD cache for warm data (moderate speed, larger capacity). This segmentation allows the system to achieve fast access for frequently accessed data while using cost-effective SSD storage for less frequently accessed data, thereby increasing overall cache capacity without sacrificing critical access speeds.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an SSD cache as an intermediary layer between DRAM cache and HDD storage. This SSD cache acts as a buffer that stores data evicted from DRAM cache, providing a moderate-speed storage layer that prevents direct access to slow HDDs, thereby extending the effective cache capacity while maintaining acceptable access performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Quantity of substance

If read-preference SSD cache is used, then cost is reduced compared to DRAM cache, but performance and capacity utilization become suboptimal due to hardware limitations and access frequency management

Engineering Contradiction:
Improvecache capacityVSAvoidcapacity utilization
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent implements dynamic cache management where the SSD cache can adapt its behavior based on access patterns. The system dynamically adjusts which data to evict from DRAM to SSD cache, and dynamically selects which SSD cache pages to evict to HDD, based on real-time access frequency monitoring. This dynamic adaptation optimizes capacity utilization and prevents the suboptimal performance seen in static read-preference SSD cache designs.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the operational parameters of the SSD cache by implementing different eviction policies for different data types and access patterns. Instead of a fixed read-preference policy, the system adjusts cache behavior parameters based on whether data is read-heavy or write-heavy, optimizing both capacity utilization and performance for different workloads.

Inventive Principle:
Principle #35Parameter changes

3Reliability

If RAID-1 SSD cache is used, then redundancy is improved, but performance and capacity utilization suffer due to hardware limitations

Engineering Contradiction:
ImproveredundancyVSAvoidcapacity utilization
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies local quality by implementing selective redundancy only where needed. Instead of applying RAID-1 redundancy uniformly across all SSD cache pages, the system applies redundancy selectively based on data importance and access patterns. Frequently accessed data maintains redundancy, while less critical data uses simpler storage, optimizing both reliability and capacity utilization.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent dynamically adjusts the level of redundancy based on current system conditions and access patterns. The eviction policy adapts to maintain appropriate redundancy levels without the performance penalty of fixed RAID-1 configuration, allowing the system to optimize both reliability and capacity utilization for different workload conditions.

Inventive Principle:
Principle #15Dynamics

4Ease of operation

If conventional SSD cache eviction policies are used, then implementation simplicity is maintained, but load balance and response time become suboptimal

Engineering Contradiction:
Improveeviction policy implementationVSAvoidresponse time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent implements feedback mechanisms that monitor access patterns and use this information to guide eviction decisions. The system continuously observes which data is accessed and adjusts eviction policies accordingly, evicting data that is less likely to be needed soon while retaining data with higher access probability. This feedback-driven approach optimizes response time without significantly complicating the eviction policy implementation.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs preliminary actions by pre-fetching data that is likely to be needed soon based on observed access patterns, and by proactively evicting data that is unlikely to be needed in the near future. This preliminary management of cache contents reduces the likelihood of cache misses and improves response time without requiring complex real-time decision-making during data access operations.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11093410B2Cache management method, storage system and computer program product
Publication Date: 2021.08.17 EMC IP HLDG CO LLC
  • US11093410B2 patent drawing
  • US11093410B2 patent drawing
  • US11093410B2 patent drawing

AI summary

Embodiments of the present disclosure provide a cache management method, storage system and computer program product. The cache management method includes determining an access frequency for each of a plurality of cache pages in a storage system. The method further includes organizing the plurality of cache pages into a plurality of queues based on the access frequency. The method further includes allocating solid-state disks for the plurality of queues based on the access frequency, so that queues where pages with higher access frequency are located have more solid state disks.