File-Based Dataset Synchronization Across Intermittent Connections
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In distributed systems with intermittent connectivity, synchronizing data changes across mobile devices and server components is difficult and error-prone, especially when large datasets need to be transferred.
Innovation Solution
A synchronization coordinator and mobile application use file transfers to synchronize datasets, allowing large datasets to be transferred as files, even when the application is not actively running on the mobile device, by using unique identifiers to store and retrieve files in a file store.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional data synchronization methods are used over intermittent connectivity, then data can be synchronized when connected, but the process becomes error-prone and inefficient for large datasets
Solution Approach 1:
The patent extracts the synchronization process into separate, manageable phases: initialization phase where the server sends the complete dataset, and update phase where only changes are transferred. This separation allows the system to handle large datasets efficiently by establishing a baseline connection when available, then performing quick delta updates during intermittent connectivity windows.
Solution Approach 2:
The system performs preliminary actions by establishing the complete dataset synchronization during periods of good connectivity. The server maintains a version history and change log in advance, so when connectivity is restored after intermittent disconnections, the mobile device can quickly apply pre-prepared updates without needing to retransmit the entire dataset.
2Quantity of substance
If the mobile application remains active to complete long-running file transfer tasks, then large datasets can be synchronized, but the user experience deteriorates due to device constraints
Solution Approach 1:
The patent introduces a background service as an intermediary between the user application and the file transfer process. This background service handles long-running synchronization tasks independently, allowing the main application to exit or be suspended without interrupting the data transfer. The background service monitors transfer progress and manages resource allocation, enabling large dataset synchronization without requiring the application to remain active in the foreground.
3Loss of information
If traditional active monitoring is used for file transfer completion, then transfer status can be tracked, but the system complexity increases and battery consumption rises
Solution Approach 1:
The background service implements self-service mechanisms by automatically managing its own execution lifecycle, resource allocation, and error recovery. It uses Android's job scheduling framework to automatically trigger transfers based on connectivity conditions without requiring complex user-configurable parameters or manual intervention. The service autonomously handles pause/resume operations and progress reporting, reducing overall system complexity while maintaining reliable transfer status tracking.
Data Source
AI summary
Changes can be synchronized in a distributed system with intermittent connectivity. A synchronization coordinator on a server and an application on mobile devices can be configured to synchronize a shared dataset using file transfers. By transferring files, the application on the mobile device can synchronize large, shared datasets via a long-running task without needing to remain active on the mobile device until the task is completed. The synchronization coordinator and applications can use unique identifiers to identify storage locations by which the files are transferred.


