Invertible Bloom Filter Reconciliation for Low-Bandwidth Database Sync
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional data synchronization methods between databases involve costly operations such as scanning and copying data records, leading to high bandwidth consumption.
Innovation Solution
A centralized database management system uses invertible bloom filters to encode data tables, perform subtraction operations on these filters to identify differences, and generate instructions for data synchronization, reducing the need for raw data copying and minimizing bandwidth usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conventional methods scan and copy data records between databases, then data synchronization is achieved, but bandwidth consumption increases
Solution Approach 1:
The patent extracts only the essential identifying features of data records (encoded into bloom filters) rather than copying entire data records. This allows synchronization to be achieved by comparing compact filter representations, dramatically reducing the amount of data transmitted over the network while still enabling complete identification of differences between source and destination databases.
Solution Approach 2:
The patent creates simplified copies of data in the form of bloom filters rather than copying actual data records. These filter copies contain hashed representations of data elements that enable comparison and difference identification without requiring transmission of the original data, thus reducing bandwidth consumption while maintaining synchronization capability.
2Reliability
If conventional methods copy data records between databases, then synchronization is maintained, but operation cost increases
Solution Approach 1:
The patent extracts only the necessary identifying information from data records and encodes it into compact bloom filter structures. This extraction approach reduces the computational cost of comparing data between databases, as operating on small filter structures is significantly cheaper than scanning and comparing entire data records, thereby lowering operation costs while maintaining data consistency.
Solution Approach 2:
The patent transforms data records into a different parameter representation (bloom filter encoding) that changes the cost structure of synchronization operations. By representing data as hashed bit arrays rather than full records, the computational parameters for comparison and difference identification are fundamentally altered, reducing operation costs while preserving the ability to maintain data consistency.
3Loss of energy
If bloom filters are used to encode data tables, then bandwidth consumption decreases, but system complexity increases
Solution Approach 1:
The patent introduces bloom filters as an intermediary data structure between the source and destination databases. This intermediary encoding layer simplifies the synchronization process by providing a compact, comparable representation of data that reduces bandwidth requirements. The added complexity of implementing bloom filters is offset by the significant reduction in network transmission requirements and the simplification of difference identification.
Data Source
AI summary
A centralized database management system performs data synchronization with lower bandwidth consumption and higher efficiency. The system manages data synchronization and data reconciliation across multiple databases managed by multiple DBMS across different client servers. The system generates and sends instructions that encode each data table into an invertible bloom filter and identifies differences between the two databases by performing a subtraction operation on the two invertible bloom filters. The system may generate a third invertible bloom filter comprising information associated with differences between the two data tables. The system may send instructions to the source and the destination databases, where a first and a second invertible bloom filters are encoded for the source and the destination databases, respectively. The system may decode the third invertible bloom filter, identify the different elements, and generate instructions to the source and/or the destination database.


