Desktop-Web Data Sync Using Cadenced Work Stack Updates
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional synchronization methods for desktop and web-based applications, such as QuickBooks, suffer from slow update speeds and significant resource consumption, particularly when data is transmitted without a proper cadence of event planning, leading to slowdowns and inefficiencies.
Innovation Solution
A synchronization system that utilizes a cloud service layer to manage synchronization actions based on last modified times, employs a separate cache and compression of data, and uses a push and pull mechanism with regular intervals to minimize communication and workload, ensuring data is only requested when new information is needed, thereby reducing the need for continuous verification of data existence.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional synchronization methods transmit data without proper cadence, then data update completeness is improved, but synchronization speed deteriorates and resource consumption increases
Solution Approach 1:
The system implements periodic synchronization intervals where the sync client requests data at predetermined times rather than continuously. The cloud service layer determines what data to send based on last modified times, creating a rhythmic, cadenced synchronization pattern that improves speed while maintaining completeness.
Solution Approach 2:
The cloud service layer pre-determines which data needs synchronization by checking last modified times before the sync client requests data. This preliminary assessment allows the system to send only necessary data updates rather than transmitting all data, improving both speed and efficiency.
2Measurement precision
If conventional synchronization methods continuously verify data existence, then data accuracy is improved, but resource consumption deteriorates
Solution Approach 1:
The system extracts only the essential synchronization information (last modified times and data pointers) from the cloud database and sends it to the sync client. This extraction eliminates the need for continuous verification of entire data sets, maintaining accuracy while reducing resource consumption.
Solution Approach 2:
Instead of continuously verifying original data existence, the system uses cached copies of last modified times and data pointers stored locally at the sync client. These copies allow rapid comparison and determination of what data needs updating without repeatedly accessing the cloud database.
3Reliability
If data is compressed and encrypted before transmission, then security is improved, but transmission time deteriorates
Solution Approach 1:
The system extracts only essential data elements (pointers and modification timestamps) for transmission rather than encrypting and transmitting entire data sets. This selective extraction dramatically reduces the amount of data requiring compression and encryption, minimizing transmission time while maintaining security for the critical information that is transmitted.
Data Source
AI summary
The document generally describes systems and methods that include determining, at a cloud service layer executing on a remote computing system, a set of synchronization work to be handled by a sync client executing on a local computing system based on a last modified time of a cloud-based database; adding, by the cloud service layer, at least one synchronization action to a work stack to be handled by the sync client based on actions performed on the cloud-based database, wherein the at least one synchronization action includes at least one record pointer to source records; compressing and encrypting the work stack and transmitting the work stack from the cloud service layer to the sync client; decompressing and decrypting, by the sync client, the work stack; and sending, by the sync client, the decompressed and decrypted work stack to an SDK of a local application.


