Cache Management via Hinted Data Removal

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Data storage systems face inefficiencies in cache memory management, where invalid data associated with deleted files persists due to priority queue algorithms, leading to occupied space that could be used for valid data, and valid data is flushed prematurely.

Innovation Solution

A cache management system comprising a hinting driver, priority controller, and data scrubber that intercepts data packets, generates pointers to identify discard requests, and removes invalid data from cache memory, ensuring free data windows are maintained for valid data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If priority queue algorithm is used for cache management, then data access efficiency is improved, but invalid data persists in cache memory occupying space that could be used for valid data

Engineering Contradiction:
Improvedata access efficiencyVSAvoidcache memory utilization
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system performs preliminary actions by intercepting data packets before they are fully processed and generating discard hints in advance. The hinting driver monitors data transfer requests and proactively identifies data that should be discarded, creating discard hints before the priority queue algorithm would naturally evict the data. This preliminary identification allows the system to remove invalid data before it occupies cache space, resolving the contradiction between maintaining efficient priority-based access and preventing invalid data persistence.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms where the hinting driver continuously monitors data transfer activity and provides discard hints back to the cache management system. The priority controller receives these hints and adjusts cache management decisions accordingly. This feedback loop enables the system to maintain high data access efficiency through priority queue algorithms while simultaneously preventing invalid data from persisting in cache memory, as the feedback mechanism continuously identifies and flags data that should be discarded.

Inventive Principle:
Principle #23Feedback

2Speed

If cache memory is filled with high priority data, then data access speed is improved, but valid data is flushed prematurely when cache reaches critical size

Engineering Contradiction:
Improvedata access speedVSAvoiddata retention time
Core Design Contradiction:
SpeedVSDuration of action of stationary object

Solution Approach 1:

The system performs preliminary identification of data that should be discarded by intercepting data packets and generating discard hints before cache memory reaches critical capacity. The hinting driver monitors data transfer requests and proactively identifies data suitable for discarding, allowing the system to remove this data before it would be flushed due to cache full conditions. This preliminary action ensures that valid high-priority data is not prematurely flushed, maintaining both fast access speeds and appropriate data retention times.

Inventive Principle:
Principle #10Preliminary action

3Device complexity

If invalid data is not removed from cache memory, then cache structure remains simple, but system performance deteriorates due to occupied cache space

Engineering Contradiction:
Improvecache management structureVSAvoidsystem performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The system segments the cache management function into distinct components: a hinting driver for intercepting data packets and generating discard hints, a priority controller for receiving hints and determining discard requests, and a data scrubber for locating and removing invalid data. This segmentation allows the system to maintain relatively simple cache structures while achieving improved performance through coordinated action among the segmented components. Each component has a specific, simplified role that contributes to the overall performance improvement without requiring complex cache management structures.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9378151B2System and method of hinted cache data removal
Publication Date: 2016.06.28 AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE LTD
  • US9378151B2 patent drawing
  • US9378151B2 patent drawing
  • US9378151B2 patent drawing

AI summary

The disclosure is directed to a system and method of cache management for a data storage system. According to various embodiments, the cache management system includes a hinting driver, a priority controller, and a data scrubber. The hinting driver generates pointers based upon data packets intercepted from data transfer requests being processed by a host controller of the data storage system. The priority controller determines whether the data transfer request includes a request to discard a portion of data based upon the pointers generated by the hinting driver. If the priority controller determines that data transfer request includes a request to discard a portion of data, the data scrubber locates and removes the portion of data from the cache memory so that the cache memory is freed from invalid data (e.g. data associated with a deleted file).