Probabilistic Cache Update for Database Query Accuracy

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing database caching systems face challenges in maintaining the accuracy of pre-computed query results, as they become outdated due to changes in underlying data, leading to inefficient re-computation strategies that consume limited computing resources without ensuring real-time responses.

Innovation Solution

A probabilistic model is used to estimate the accuracy of cached database query results, combined with real-time event analysis to determine which results are outdated, allowing for targeted re-computation and minimizing unnecessary calculations, thereby maintaining cache accuracy while optimizing resource utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If pre-computed query results are maintained in a cache system, then query response times are shortened, but the cached results become outdated when underlying data changes

Engineering Contradiction:
Improvequery response timeVSAvoidaccuracy of cached results
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The system pre-computes query results and stores them in a cache before they are actually needed. This preliminary action allows the cache to immediately serve future queries without re-computation, reducing response time while maintaining accuracy through subsequent validation mechanisms

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements a validation mechanism that checks whether cached results are still valid by comparing them against current data state. This feedback loop determines whether cached results should be returned or re-computed, ensuring reliability while maintaining fast response times for valid cached entries

Inventive Principle:
Principle #23Feedback

2Reliability

If re-computation is performed frequently to keep cache up-to-date, then accuracy of cached results is maintained, but computing resources are consumed

Engineering Contradiction:
Improveaccuracy of cached resultsVSAvoidcomputing resource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

Instead of re-computing all cached results frequently, the system performs validation only on specific cached entries that are likely to be accessed or have changed. This partial validation approach maintains accuracy for critical results while avoiding unnecessary re-computation of others, reducing computing resource consumption

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system changes the state of cached entries by assigning validation status and timestamps. This parameter change allows the system to track which results need validation and when, enabling selective re-computation based on age and access patterns rather than uniform frequent re-computation of all data

Inventive Principle:
Principle #35Parameter changes

3Reliability

If simple update strategies like re-computing entire data domain frequently are used, then cache accuracy is maintained, but system efficiency decreases

Engineering Contradiction:
Improvecache accuracyVSAvoidsystem efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system segments the data domain into individual query result entries, each with its own validation status and metadata. This segmentation allows selective validation and re-computation of only specific entries rather than the entire data domain, maintaining cache accuracy while dramatically improving system efficiency by avoiding unnecessary processing of unchanged data

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS9235620B2Updating cached database query results
Publication Date: 2016.01.12 AMADEUS SAS
  • US9235620B2 patent drawing
  • US9235620B2 patent drawing
  • US9235620B2 patent drawing

AI summary

A data cache platform maintains pre-computed database query results computed by a computation platform based on data maintained in the computation platform and is configured to determine probabilities of the cached database query results being outdated, to automatically issue re-computation orders to the computation platform for updating cached database query results on the basis of the determined probabilities of the pre-computed database query results being outdated and to receive the updated pre-computed database query results as results of the re-computation orders. The probability determination depends on a probabilistic model and on the occurrence of asynchronous real-time events. The real-time events are indeterministic with regard to the expiration of the cached database query results and only have a probabilistic influence on the discrepancies between the cached database query results maintained in the data cache platform and presumed actual database query results.