Dynamic Partial Synchronization for Mobile Apps
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current mobile applications face inefficiencies in synchronization processes, particularly when network connections are limited or when users require immediate information, as full synchronization can be time-consuming and resource-intensive, leading to device and application delays.
Innovation Solution
A dynamic synchronization method that identifies triggering events and request contexts to perform partial synchronizations, selecting specific synchronization phases and scopes based on network connection speed, user roles, and other contextual factors, allowing for reduced data exchange and optimized resource usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If full synchronization is performed, then data completeness is improved, but time consumption and resource usage increase
Solution Approach 1:
The patent implements partial synchronization by identifying and executing only the necessary synchronization phases based on the triggering event type. Instead of performing all synchronization phases universally, the system selectively executes relevant phases (e.g., only data download, only data upload, or only validation), thereby reducing synchronization time while maintaining data completeness for the specific context.
Solution Approach 2:
The synchronization process is divided into multiple independent phases that can be selectively executed. The patent segments synchronization into distinct phases such as data download, data upload, validation, and conflict resolution, allowing the system to choose and execute only the required phases based on the triggering event, thus avoiding unnecessary time consumption.
2Reliability
If full synchronization is performed, then data completeness is improved, but network resource consumption increases
Solution Approach 1:
The system performs only the necessary network operations required by the triggering event. For example, if the trigger is a local data change, only upload phases are executed; if it's a server update, only download phases are executed. This partial action approach significantly reduces network resource consumption compared to full synchronization, while still ensuring data completeness for the specific scenario.
3Loss of time
If partial synchronization is performed, then time consumption is reduced, but adaptability to different scenarios decreases
Solution Approach 1:
The synchronization system dynamically adapts its behavior based on the triggering event type and context. The patent implements a mechanism that automatically selects appropriate synchronization phases and configurations based on real-time conditions, making the partial synchronization approach versatile enough to handle various scenarios including initial sync, incremental sync, conflict resolution, and offline mode synchronization.
Solution Approach 2:
The system changes synchronization parameters such as the set of phases to execute, data filters, and priority levels based on the triggering event. By dynamically adjusting these parameters, the system maintains high adaptability across different scenarios while consistently reducing synchronization time through selective phase execution.
4Productivity
If context-aware synchronization is implemented, then synchronization efficiency is improved, but system complexity increases
Solution Approach 1:
The system performs preliminary analysis of the triggering event to determine the appropriate synchronization phases before execution. By pre-identifying the event type and selecting the relevant phases in advance, the system achieves context-aware synchronization efficiency without requiring complex real-time decision-making during the actual synchronization process, thus managing system complexity effectively.
Data Source
AI summary
Techniques are described for dynamically synchronizing applications executed on a client device with backend systems. An example method includes identifying a triggering event associated with a request to perform a synchronization of a client application, where the request is associated with a request for a partial synchronization of the client application. A set of information defining a request context associated with the request is obtained. A set of potential partial synchronization scenarios are identified, where each of the potential partial synchronization scenarios associated with a predefined synchronization context. The request context is compared to the predefined synchronization contexts of the set of potential partial synchronization scenarios to identify a particular partial synchronization scenario corresponding to the request context. In response to identifying the particular partial synchronization scenario corresponding to the request context, a set of synchronization operations defined in the identified partial synchronization scenario are performed.


