Cached Data Detection via Session Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Computers and services face challenges in determining how frequently data is retrieved from local caches versus remote services, making it difficult to optimize data access and user experience.

Innovation Solution

Implementing a system where a session identifier is used to track data requests, with a cached data detection request sent to determine if data is retrieved from the local cache or the remote service, allowing for estimation of cache usage and optimization of data access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If data is always retrieved from the remote service, then data freshness and accuracy are improved, but network bandwidth consumption and access time increase

Engineering Contradiction:
Improvedata freshnessVSAvoidnetwork bandwidth consumption
Core Design Contradiction:
Measurement precisionVSLoss of energy

Solution Approach 1:

The system performs preliminary actions by storing data locally in cache before it is needed. When data is first retrieved from the remote service, it is cached for future use. This preliminary caching action reduces subsequent network bandwidth consumption while maintaining data availability, resolving the contradiction between data freshness and energy loss.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically determines whether to retrieve data from cache or remote service based on current conditions. The cached data detection request mechanism allows the system to adaptively choose the data source, balancing between data freshness (from remote service) and bandwidth conservation (from local cache), thus resolving the contradiction dynamically rather than using a fixed approach.

Inventive Principle:
Principle #15Dynamics

2Loss of energy

If data is always retrieved from the local cache, then network bandwidth consumption is reduced, but data freshness and accuracy deteriorate

Engineering Contradiction:
Improvenetwork bandwidth consumptionVSAvoiddata freshness
Core Design Contradiction:
Loss of energyVSMeasurement precision

Solution Approach 1:

The system implements feedback through cached data detection requests. Before using cached data, the system sends detection requests to verify whether the cached data is still valid or has been updated on the remote service. This feedback mechanism ensures data freshness is maintained while still benefiting from local caching, resolving the contradiction between bandwidth conservation and data accuracy.

Inventive Principle:
Principle #23Feedback

3Measurement precision

If cached data detection requests are sent for every data access, then cache usage accuracy is improved, but system complexity and processing overhead increase

Engineering Contradiction:
Improvecache usage tracking accuracyVSAvoidsystem complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system extracts the cache validation function into a separate, dedicated cached data detection request mechanism. This extraction allows the main data access pathway to remain simple while the detection function handles the complexity of cache validation independently. The detection request is a focused, specialized operation that simplifies the overall system architecture despite adding a validation step.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS10079907B2Cached data detection
Publication Date: 2018.09.18 MICROSOFT TECHNOLOGY LICENSING LLC
  • US10079907B2 patent drawing
  • US10079907B2 patent drawing
  • US10079907B2 patent drawing

AI summary

A service assigns session identifiers to usage sessions of a program on a computing device, and maintains records in a log of received page requests and associated session identifiers, as well as received cached data detection requests and associated session identifiers. This log can be used to determine how many usage sessions existed over a particular amount of time, and how many of the usage sessions used data from a local cache rather than from the service. The service also returns, in response to a received cached data detection request, a response including an indication that the response is from the service. The program can determine that the response was received from the service if the indication is included in the response, and that the response was received from a local cache of the computing device if the indication is not included in the response.