Database Synchronization Policy Scope Resolution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing database synchronization methods require the target database to specify each scope for synchronization, which can be inefficient and cumbersome, especially in multi-tenant systems where scope criteria and changes need to be managed across various services.
Innovation Solution
A synchronization scopes policy is implemented where the source database receives scope criteria and a version identifier from the target database, allowing it to determine and synchronize only the necessary data changes without manual specification, using a point-in-time snapshot or empty set for initial synchronization, and updating the policy after synchronization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the target database specifies each scope for synchronization manually, then the synchronization policy can be precisely controlled, but the system complexity and operational burden increase significantly
Solution Approach 1:
The source database automatically determines which scopes to synchronize by comparing scope criteria against stored scope definitions, eliminating the need for manual scope specification at the target database. The system serves itself by autonomously resolving scope changes based on criteria matching.
Solution Approach 2:
Scope definitions and criteria are pre-established and stored in the source database before synchronization occurs. The version identifier captures the state of scopes at a specific point in time, enabling the source database to pre-determine which scopes need synchronization without waiting for manual specification.
2Measurement precision
If manual scope specification is used, then synchronization accuracy can be maintained, but synchronization delays increase due to manual configuration requirements
Solution Approach 1:
The source database autonomously determines scope synchronization requirements by automatically comparing current scope criteria against stored definitions and version identifiers. This self-determination eliminates manual configuration delays while maintaining accurate scope identification through automated criteria matching.
Solution Approach 2:
The system uses version identifiers to track the state of scopes at different points in time and feeds this information back to the source database. This feedback mechanism enables the source database to automatically determine which scopes have changed and need synchronization, eliminating delays associated with manual status determination.
3Quantity of substance
If all data changes are synchronized regardless of scope, then data completeness is maintained, but synchronization efficiency decreases due to unnecessary data transfer
Solution Approach 1:
The system segments data into distinct scopes based on criteria such as tenant, user, or data type. By organizing data into manageable scope segments, the source database can selectively synchronize only the relevant segments that match the current criteria, improving efficiency while maintaining completeness for the targeted data.
Solution Approach 2:
Different scopes are treated with different synchronization characteristics based on their local properties and criteria. The system applies localized quality control by synchronizing only those scopes that match the current criteria, rather than uniformly treating all data the same, thereby improving overall synchronization efficiency.
4Adaptability or versatility
If scope criteria are dynamically updated, then adaptability to changing requirements is improved, but the complexity of managing scope changes increases
Solution Approach 1:
The system dynamically updates scope criteria and automatically resolves the impact on existing scopes. When criteria change, the source database re-evaluates which scopes match the new criteria and determines the appropriate synchronization behavior, enabling dynamic adaptability without manual reconfiguration.
Solution Approach 2:
The version identifier captures the state of scope criteria at a specific point in time, creating a snapshot that can be referenced later. This preliminary capture of state information enables the system to handle dynamic updates systematically by comparing new criteria against the stored version, reducing the complexity of managing changes.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
Embodiments described herein are directed to synchronizing scopes between a source database and a target database without the target database specifying each scope that is to be synchronized and to determining scope changes based on service subscriptions. In one embodiment, a source database receives from a target database a synchronization scopes policy corresponding to scope criteria provided by the target database. The synchronization scopes policy includes both the scope criteria and a version identifier that together identify a point-in-time snapshot of the set of scopes meeting the scope criteria as of the latest synchronization. The source database resolves the set of scopes last synchronized from the source database to the target database based on the synchronization scopes policy's scope criteria and version identifier. The source database synchronizes to the target database the changes to data in the resolved set of scopes.