Database Synchronization Using Dependency Graphs
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data synchronization methods for portable electronic devices over wireless networks lack a clear definition of dependencies between databases, leading to difficulties in maintaining the correct order and priority during synchronization, especially when multiple databases are involved.
Innovation Solution
The use of a directed acyclic graph to represent database dependencies allows for the determination of which databases to synchronize first based on their dependencies and size, ensuring that databases with no dependencies are synchronized first and smaller databases are prioritized to maximize synchronization efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If databases are assigned priority levels for synchronization order, then the synchronization process can be structured, but it becomes difficult to keep track of order and priority when several databases are present
Solution Approach 1:
The patent transitions from a one-dimensional priority level assignment to a two-dimensional dependency graph representation. Each database is represented as a node with dependencies visualized as directed edges, adding a dimensional aspect to the synchronization structure. This graphical representation in another dimension (visual/spatial) makes it easier to track and manage complex inter-database dependencies without increasing operational complexity.
2Productivity
If databases are synchronized without considering dependencies, then the synchronization process is simpler, but databases with dependencies may not be restored in the desired order
Solution Approach 1:
The patent performs preliminary analysis of database dependencies before the actual synchronization process. The dependency graph is constructed and analyzed in advance to determine the correct synchronization order. This preliminary action ensures that the synchronization process can proceed efficiently in the correct order without requiring complex real-time dependency checking, thus maintaining both productivity and reliability.
3Loss of time
If all databases are synchronized simultaneously, then the total synchronization time is reduced, but the dependencies between databases cannot be respected
Solution Approach 1:
The patent segments the synchronization process into multiple independent batches based on the dependency graph analysis. Databases are grouped into synchronization batches where all databases in a batch have no unmet dependencies. This segmentation allows parallel execution of independent batches (reducing total time) while ensuring that within each batch, the dependency precision is maintained. The segmentation transforms a sequential process into a partially parallel one without sacrificing dependency correctness.
Data Source
AI summary
A method for synchronizing databases at a portable electronic device with corresponding databases at a second electronic device, the method including determining which one of the databases at the portable electronic device is to be synchronized based on a directed acyclic graph representing database dependencies, and synchronizing the one of the databases at the portable electronic device with a corresponding one of the databases at the second electronic device.


