Intermediary Cache for Offline Data Availability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Mobile computing applications face unpredictable behavior and incorrect information due to lack of network connectivity or server access, as existing methods for off-line data management are either application-specific, require separate data models, or involve additional processing for off-line operations.

Innovation Solution

An intermediary intercepts requests between a client program and server, responding as if data operations have been performed, even when the server is unreachable, using local storage and synchronization to maintain data consistency across protocols, allowing applications to function as if always connected.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is stored locally and backed up on the server, then off-line data availability is improved, but device complexity and synchronization requirements increase

Engineering Contradiction:
Improveoff-line data availabilityVSAvoiddatabase and application installation
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent introduces a server as an intermediary that handles data storage and processing requests. The server acts as a mediator between the mobile device and the data, providing off-line data availability without requiring complex local database installations or synchronization mechanisms on the device.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If a local cache and server store use distinct data models, then local processing efficiency is improved, but application complexity increases due to data transformation requirements

Engineering Contradiction:
Improvelocal processing efficiencyVSAvoiddata transformation and switching
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent enforces a single data model across both local and server storage. By maintaining data model homogeneity, the system eliminates the need for complex data transformations and switching mechanisms, while still providing efficient local processing through the standardized data structure.

Inventive Principle:
Principle #33Homogeneity

3Adaptability or versatility

If network connectivity is not ubiquitous, then mobile coverage is improved, but data access reliability deteriorates

Engineering Contradiction:
Improvemobile network coverageVSAvoiddata access consistency
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent implements preliminary data caching on the server before the mobile device needs it. By pre-loading and storing data on the server, the system ensures data access reliability even when network connectivity is unavailable, as the server can fulfill requests from its cached data without requiring real-time network access.

Inventive Principle:
Principle #10Preliminary action

4Device complexity

If servers are not configured for high-availability, then server complexity is reduced, but data access reliability worsens during server unavailability

Engineering Contradiction:
Improveserver configurationVSAvoidserver accessibility
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent creates copies of data on the server that can be served locally without requiring the original data source to be continuously accessible. This copying mechanism allows the server to provide data access reliability even when not configured for high-availability, as the cached copies can be served independently of the original data source.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS8868707B2Adaptive write-back and write-through caching for off-line data
Publication Date: 2014.10.21 ORACLE INT CORP
  • US8868707B2 patent drawing
  • US8868707B2 patent drawing
  • US8868707B2 patent drawing

AI summary

Techniques for facilitating communication between an application and a server are provided. An intermediary sits between an application and a server. The intermediary intercepts and responds to communications on behalf of the intended recipient of the communication. In one technique, the intermediary relays a request to the server and receives a response from the server. The intermediary updates a local store with data that is implied by the protocol to which the request conforms and determined based on the request. In another technique, the intermediary intercepts a request to access data on the server. The intermediary determines, based on characteristics of a computing device, that the request should be responded to using data that is available in a local store. The intermediary responds to the request using that data.