Client Server Data Sync Prioritization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing client-server synchronization methods are inefficient and inconvenient, particularly when the client and server are out of communication, leading to lengthy 'priming the cache' processes and incomplete data availability on the client device.

Innovation Solution

A method where the server identifies unsynchronized data and change operations, prioritizing them based on relevance and chronology, and transmits them to the client in parallel mechanisms, allowing immediate access to high-priority data even during offline use.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of information

If data is downloaded chronologically from oldest to newest, then synchronization completeness is improved, but user accessibility to relevant data is worsened

Engineering Contradiction:
Improvesynchronization completenessVSAvoiddata accessibility time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The patent segments the synchronization process into two independent parallel mechanisms: one for downloading data chronologically (oldest to newest) to ensure completeness, and another for prioritizing and making relevant data immediately accessible to users. This segmentation resolves the contradiction by allowing both synchronization completeness and user accessibility to be achieved simultaneously through different pathways.

Inventive Principle:
Principle #1Segmentation

2Stability of the object's composition

If complete priming of client cache is required before operation, then data consistency is improved, but operational readiness is worsened

Engineering Contradiction:
Improvedata consistencyVSAvoidoperational readiness
Core Design Contradiction:
Stability of the object's compositionVSEase of operation

Solution Approach 1:

The patent applies preliminary action by pre-identifying and prioritizing relevant data that should be made immediately accessible to users, while simultaneously initiating the complete synchronization process in the background. This allows the client to become operationally ready with key data available immediately, while complete data consistency is established subsequently through the ongoing synchronization process.

Inventive Principle:
Principle #10Preliminary action

3Quantity of substance

If large amounts of data are synchronized after communication outage, then data completeness is improved, but synchronization duration is worsened

Engineering Contradiction:
Improvedata volume synchronizedVSAvoidsynchronization duration
Core Design Contradiction:
Quantity of substanceVSDuration of action of moving object

Solution Approach 1:

The patent implements continuity of useful action by running the synchronization process continuously in the background without requiring the client application to remain open or the user to wait. The system continuously downloads and processes data, making large volumes of data synchronized over time while the user can immediately access prioritized relevant data, thus reducing the perceived synchronization duration while maintaining data completeness.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentEP3399445B1Always-ready client/server data synchronization
Publication Date: 2020.08.12 GOOGLE LLC
  • EP3399445B1 patent drawingFigure 1
  • EP3399445B1 patent drawingFigure 2
  • EP3399445B1 patent drawingFigure 3

AI summary

Systems and methods for data synchronization are described. In some embodiments, a method is devised for a client to synchronize information with a server. This client receives a communication from a server to selectively synchronize information between the server and the client, the information includes data that have never been synchronized with the client and change operations that have not been synchronized in last data synchronization, wherein the data is arranged and received in an order from higher priority to lower priority. The client stores at least a portion of the data and at least a portion of the change operations in memory of the client in accordance to order received and enables a user of the client device to have immediate access to the portion of data and the portion of change operations in the communication that are stored on the client at any termination point of information synchronization.