Distributed Query Caching for Predicted Slow Data Sources

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Distributed queries are often slowed down by data sources with slower response times or unavailability, leading to inefficiencies and potential timeouts, which existing technologies struggle to mitigate effectively.

Innovation Solution

A computer-implemented method that analyzes repeated queries, learns patterns of data source availability and response times, prefetches data before predicted slow periods, and uses cache storage to serve queries during these times, while also adjusting query timing and parallelism to minimize impact.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If data is fetched from slow data sources during predicted slow periods, then query accuracy is maintained, but query response time increases and system efficiency decreases

Engineering Contradiction:
Improvequery accuracyVSAvoidsystem efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The system performs preliminary actions by prefetching data from data sources before predicted slow periods begin. The query optimization system identifies patterns of slow response times and proactively retrieves data into cache storage ahead of time, so that when queries are executed during slow periods, the data is already available locally, eliminating the need to access slow data sources during critical query windows

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system prepares compensatory measures in advance by creating cached copies of data before slow periods occur. This cushioning mechanism ensures that even when data sources become slow or unavailable, the system has pre-prepared data in cache that can satisfy query requirements, thus maintaining service quality without relying on slow external sources during problematic time windows

Inventive Principle:
Principle #11Beforehand cushioning (Prior cushioning)

2Loss of time

If data is cached from slow data sources, then query response time improves, but data source availability and freshness may be compromised

Engineering Contradiction:
Improvequery response timeVSAvoiddata source availability
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

Data is cached in advance before slow periods begin, when data sources are still responsive and available. The system identifies time windows of slow performance and prefetches data during normal operating conditions, ensuring both speed improvement and data freshness by capturing data before source degradation occurs

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The caching strategy is dynamic and adaptive rather than static. The system continuously monitors data source performance characteristics, adjusts cache invalidation policies based on observed patterns, and modifies prefetching behavior according to real-time conditions. This allows the system to balance between using cached data for speed and fetching fresh data when sources are reliable

Inventive Principle:
Principle #15Dynamics

3Loss of time

If the system prefetches data before slow periods, then query performance during slow periods improves, but system resources are consumed during prefetching

Engineering Contradiction:
Improvequery performanceVSAvoidsystem resources
Core Design Contradiction:
Loss of timeVSUse of energy by moving object

Solution Approach 1:

The system applies partial action by selectively caching only the data and data sources that are most likely to be accessed during predicted slow periods. Rather than prefetching all possible data, the query optimization system identifies specific high-value targets based on query patterns and data source performance history, consuming resources only where they provide maximum benefit

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system dynamically adjusts prefetching parameters such as the time window for prefetching, the amount of data to cache, and which data sources to target based on observed performance patterns. By changing these parameters adaptively, the system optimizes the balance between resource consumption during prefetching and performance gains during query execution, avoiding wasteful resource usage

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12511284B2Distributed query optimization
Publication Date: 2025.12.30 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12511284B2 patent drawing
  • US12511284B2 patent drawing
  • US12511284B2 patent drawing

AI summary

Distributed queries are analyzed to identify repeated queries. Pattern of the repeated queries is learned, where the pattern provides information associated with at least availability of data sources used for responding to the repeated queries and response times of the data sources. For a data source in the data sources, a time window during which the data source has a response time that is slower than a response time criterion is determined; prior to beginning of the time window, data is prefetched from the data source and storing the data in a cache storage; responsive to receiving a distributed query that uses the data source during the time window, the data is fetched from the cache storage, where at least a part of a response to the distributed query is sourced from the cache storage; and after end of the time window, the data is removed from the cache storage.