Database Cache Tables for Distributed Synchronization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In client-server database models, performance and scalability degrade as the number of field representatives increases, especially when multiple clients simultaneously synchronize with the server, leading to inefficiencies in data transmission and processing.
Innovation Solution
The implementation of client-cache-tables and server-cache-tables to isolate main database tables from network transactions, allowing for efficient data transfer and synchronization by predicting and optimizing data transmission between the client and server, and enabling parallel processing for improved performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the server transmits the entire table to the client during synchronization, then the client can insert only a few new records, but the quantity of data transmitted over the network greatly increases and the database server is locked until the transaction is complete
Solution Approach 1:
The patent extracts only the necessary data (new or modified records) from the entire database table and transmits it to the client. Instead of transmitting the whole table, the system identifies and extracts only the specific records that have changed since the last synchronization, significantly reducing network data transmission volume while maintaining synchronization efficiency.
Solution Approach 2:
The patent segments the database table into individual records and transmits only the relevant segments (changed records) rather than the entire table. This segmentation allows the system to send discrete, minimal data units (only new or modified records) over the network, reducing overall data transmission volume while preserving the ability to synchronize efficiently.
2Productivity
If the server transmits the entire table to the client during synchronization, then the client can insert only a few new records, but the database server is locked until the transaction is complete, preventing another client from synchronizing
Solution Approach 1:
The patent extracts only the necessary data (new or modified records) from the entire database table and transmits it to the client. Instead of transmitting the whole table, the system identifies and extracts only the specific records that have changed since the last synchronization, significantly reducing network data transmission volume while maintaining synchronization efficiency.
Solution Approach 2:
The patent segments the database table into individual records and transmits only the relevant segments (changed records) rather than the entire table. This segmentation allows the system to send discrete, minimal data units (only new or modified records) over the network, reducing overall data transmission volume while preserving the ability to synchronize efficiently.
3Reliability
If additional infrastructure external to the client-server database is created to address synchronization problems, then the synchronization can be performed, but additional processing time is required during execution
Solution Approach 1:
The patent enables the database system to synchronize itself using its built-in services and infrastructure. The client-server database model's native capabilities are utilized to identify, extract, and transmit changed records without requiring external queueing systems or additional processing infrastructure. This self-service approach eliminates the overhead of external systems while maintaining synchronization reliability.
Solution Approach 2:
The patent uses the database system's own transaction log or change tracking mechanism as an intermediary to identify and manage synchronized records. Rather than introducing external queueing infrastructure, the system leverages built-in database features to mediate the synchronization process, reducing processing time while ensuring reliable data transfer.
Data Source
AI summary
A method for synchronizing a database server to a current status of a client database using data cache techniques is provided. Upon initiating synchronization, the database server receives an identification of a client connection, and creates a server-cache-table having a structure that is compatible with the client database. Database records from a corresponding client-cache-table are received through the client connection and inserted into the server-cache-table. The server-cache-table is merged into the database server. Similar cache-tables can be utilized to synchronize data from the database server to the client. Optionally, a parent-cache-table can be created on the server and populated with records associated with the identified client. Queries and other database operations during synchronization can be performed over the parent-cache-table to further optimize performance.


