Cached Data Repurposing via Staleness Thresholds

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional data caches face issues when expired data is returned as a cache miss, leading to errors or prolonged wait times if fresher data cannot be obtained from external sources, which can frustrate users and increase network traffic.

Innovation Solution

Implementing a system that reuses expired data when fresher data is unavailable, returning stale data with an indication of its expiration status, allowing clients to use it instead of waiting for updates or receiving error messages, thereby reducing user frustration and network load.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If expired cached data is treated as a cache miss and data is retrieved from external source, then data freshness is improved, but network traffic increases and user wait time increases when data is unavailable

Engineering Contradiction:
Improvedata freshnessVSAvoidnetwork traffic
Core Design Contradiction:
Measurement precisionVSLoss of energy

Solution Approach 1:

The system changes the parameter of data validity by introducing a staleness threshold. Instead of binary valid/invalid classification, data is reclassified based on whether its age exceeds the threshold. This allows expired but not-yet-stale data to be reused, reducing network traffic while maintaining acceptable data freshness levels.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system applies partial action by selectively returning expired data only when it meets the staleness threshold criteria, rather than always returning fresh data or always returning expired data. This partial approach balances data freshness requirements with network traffic reduction goals.

Inventive Principle:
Principle #16Partial or excessive action

2Measurement precision

If expired cached data is discarded and error is returned, then data accuracy is improved, but user experience deteriorates and system productivity decreases

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

Solution Approach 1:

The system transforms the binary decision (return fresh data or error) into a three-state decision (return fresh data, return expired but not-stale data, or return error). This parameter change in the decision logic improves system productivity by providing a middle ground that satisfies both data accuracy requirements and user experience expectations.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The staleness threshold acts as an intermediary criterion between data freshness and user satisfaction. Rather than directly choosing between returning accurate fresh data or providing any available data, the system uses the staleness threshold as a mediating filter to determine when expired data is acceptable, thereby improving productivity without sacrificing data accuracy below acceptable levels.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If data is always retrieved from external source when not in cache, then data reliability is improved, but response time increases

Engineering Contradiction:
Improvedata reliabilityVSAvoidresponse time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system segments the cache validity assessment into two independent checks: cache hit/miss determination and staleness threshold determination. This segmentation allows the system to quickly return expired but not-stale data without full external verification, reducing response time while maintaining reliability through the dual-check mechanism.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary action by pre-calculating and storing expiration timestamps and staleness thresholds in the cache metadata. When a cache access occurs, the system can immediately compare the current time against these pre-computed values without performing complex real-time validity assessments, thereby reducing response time while ensuring data reliability.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11677854B2Cached data repurposing
Publication Date: 2023.06.13 HOME BOX OFFICE INC
  • US11677854B2 patent drawing
  • US11677854B2 patent drawing
  • US11677854B2 patent drawing

AI summary

The described technology is directed towards repurposing expired cached data when no unexpired data is available. Cached, unexpired data is used in response to a request when such data exists. If such data does not exist, e.g., at a front-end data service, then an attempt to obtain the requested data from another (e.g., back-end data service) is made. If the attempt is unsuccessful, and expired cached data exists, the expired cached data is returned in response to the request, e.g., instead of returning an error. A back-end data service may similarly return expired cached data when the back-end data service is unable to obtain unexpired requested data elsewhere. An emergency mode may be entered in which data, whether expired or not, is returned from a cache when such data exists, such as when an attempt to obtain the data elsewhere is known in advance to be futile.