Session Query Result Subset Caching to Reduce Memory Waste

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing caching solutions waste cache memory and computational resources due to an 'all or nothing' approach, failing to account for minor variations in query parameters and performing unnecessary cache lookups, leading to inefficient caching and resource wastage.

Innovation Solution

Implement a system that performs cache lookups based on query parameters, retrieving matching result subsets instead of entire outputs when query parameters have changed, thereby reducing cache usage and computational resources.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If an all or nothing approach is used for caching query results, then cache lookup simplicity is maintained, but cache memory efficiency deteriorates due to storing entire results even when only minor parameter changes occur

Engineering Contradiction:
Improvecache lookup simplicityVSAvoidcache memory usage
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The patent segments query results into individual result components corresponding to specific query parameters. Instead of caching entire query results as a single unit, the system divides results into separable elements that can be independently cached and retrieved based on which parameters have changed, thereby improving cache memory efficiency while maintaining operational simplicity.

Inventive Principle:
Principle #1Segmentation

2Reliability

If cache lookups are performed for every query regardless of parameter changes, then cache hit accuracy is maintained, but computational resource efficiency deteriorates due to unnecessary lookups

Engineering Contradiction:
Improvecache hit accuracyVSAvoidcomputational resource efficiency
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent implements a dynamic cache lookup strategy that adapts based on query parameter changes. The system dynamically determines whether to perform a cache lookup by comparing current query parameters with previously cached parameters, performing lookups only when necessary (when parameters have changed), thereby maintaining cache hit accuracy while reducing unnecessary computational overhead.

Inventive Principle:
Principle #15Dynamics

3Device complexity

If entire query results are cached as single units, then implementation complexity is reduced, but cache utilization efficiency deteriorates when only minor parameter variations occur

Engineering Contradiction:
Improvecaching implementation complexityVSAvoidcache utilization efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent segments query results into individual result components that correspond to specific query parameters. This segmentation allows the system to cache only the relevant result portions when parameters change, dramatically improving cache utilization efficiency. While this increases implementation complexity compared to simple all-or-nothing caching, the patent manages this complexity through systematic parameter tracking and result component mapping.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by treating different result components with different caching strategies based on their associated query parameters. Instead of uniformly caching all results, the system selectively caches specific result portions based on which parameters have changed, optimizing cache utilization for each local component rather than applying a blanket approach to the entire result set.

Inventive Principle:
Principle #3Local quality

4Speed

If duplicate result data is cached for different query parameters, then data retrieval speed is maintained, but cache memory waste increases due to storing redundant information

Engineering Contradiction:
Improvedata retrieval speedVSAvoidcache memory waste
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent segments query results into reusable components that can be independently cached. When similar queries are received, the system retrieves only the relevant result components from cache rather than storing and retrieving entire duplicate result sets. This segmentation approach maintains fast retrieval speeds for needed data while eliminating cache memory waste from storing redundant duplicate information.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent merges multiple query results by identifying and combining common result components across different queries. Instead of storing separate duplicate results for each query, the system merges identical or similar result portions into shared cache entries, maintaining retrieval speed by keeping merged results accessible while significantly reducing the total amount of cached data required.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS20250252134A1Systems and methods for reducing usage of cache memory in connection with user queries
Publication Date: 2025.08.07 CAPITAL ONE SERVICES LLC
  • US20250252134A1 patent drawing
  • US20250252134A1 patent drawing
  • US20250252134A1 patent drawing

AI summary

In some embodiments, reducing usage of cache memory in connection with user queries may be facilitated. In some embodiments, in connection with a first query, (i) a first set of results received during a user session and (ii) a first output generated from the first set of results are stored in a session cache associated with the user session. In response to determining that a second query parameter of a second query corresponds to a first query parameter of the first query but fails to satisfy a match criterion: a cache lookup is performed on the session cache to retrieve a matching result subset of the first set of results, in lieu of retrieving the first output generated from the first set of results, where the matching result subset does not include a result corresponding to the first query parameter. A second output is then generated.