Hash-Based Data Sync for Offline Client-Backend Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data synchronization methods for business computing systems are inefficient, particularly when dealing with large volumes of business data, as they often rely on brute force comparisons of entire data records, which are computationally expensive and time-consuming.
Innovation Solution
The implementation of a data synchronizing system that uses hashing to compare hash values of data records stored on client computing devices with those on backend databases, allowing for efficient identification and synchronization of differences without the need for byte-by-byte comparisons.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If brute force comparison of entire data records is used for synchronization, then data accuracy is ensured, but computational cost and synchronization time increase significantly
Solution Approach 1:
The patent segments the data comparison process into two stages: first comparing hash values (a condensed representation of the entire data record), and only if hash values match, then performing a full byte-by-byte comparison of the actual data records. This segmentation resolves the contradiction by using a fast preliminary filter (hash comparison) to avoid unnecessary full comparisons, thereby improving synchronization speed while maintaining data accuracy through the secondary verification step.
2Productivity
If hash value comparison is used for data synchronization, then synchronization time and computational load are reduced, but there is a risk of hash collision causing incorrect synchronization
Solution Approach 1:
The patent applies preliminary action by performing hash value comparison before the full data record comparison. The hash comparison serves as a preliminary filter that quickly identifies matching records, allowing the system to proceed with confidence that these records are indeed identical. This preliminary step resolves the contradiction by enabling fast synchronization while the nature of cryptographic hash functions (designed to be collision-resistant) maintains reliability.
3Loss of information
If full data records are transmitted during synchronization, then data completeness is ensured, but network bandwidth consumption and transmission time increase
Solution Approach 1:
The patent uses hash values as a compact copy or representation of the entire data record. Instead of transmitting full data records for comparison, the system transmits and compares only the hash values (which are much smaller in size). When synchronization is needed, only the specific data records that require updating are transmitted, not all records. This copying approach resolves the contradiction by dramatically reducing transmission time and bandwidth consumption while maintaining data completeness through selective transmission of only necessary records.
Data Source
AI summary
A method includes initiating, at backend server, a process for synchronization of a data record stored locally on a client computing device with a corresponding data record stored in a backend database. The synchronization process includes comparing the hash value of the data record stored locally on the client computing device and the hash value of the corresponding data record stored in the backend database, and based on the comparing, sending information about the corresponding data record stored in the backend database to the client computing device, if needed for updating the data record stored locally on the client computing device.


