Database Synchronization Policy Scope Resolution

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvesynchronization policy control precisionVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

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.

Inventive Principle:
Principle #25Self-service

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.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If manual scope specification is used, then synchronization accuracy can be maintained, but synchronization delays increase due to manual configuration requirements

Engineering Contradiction:
Improvesynchronization accuracyVSAvoidsynchronization delay
Core Design Contradiction:
Measurement precisionVSLoss of time

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.

Inventive Principle:
Principle #25Self-service

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.

Inventive Principle:
Principle #23Feedback

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

Engineering Contradiction:
Improvedata completenessVSAvoidsynchronization efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #3Local quality

4Adaptability or versatility

If scope criteria are dynamically updated, then adaptability to changing requirements is improved, but the complexity of managing scope changes increases

Engineering Contradiction:
Improvescope criteria adaptabilityVSAvoidscope change management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

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.

Inventive Principle:
Principle #15Dynamics

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.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentEP2577517B1Scalable policy-based database synchronization of scopes
Publication Date: 2019.03.06 MICROSOFT TECHNOLOGY LICENSING LLC
  • EP2577517B1 patent drawingFigure 1
  • EP2577517B1 patent drawingFigure 2
  • EP2577517B1 patent drawingFigure 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.