Ontology Database Versioning for Cross-Database Consistency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems struggle to manage versioning and access control of ontology data across multiple databases while ensuring consistency and performance, particularly in handling conflicts between data source updates and user edits.
Innovation Solution
A system is developed to manage ontology data versioning and access control across multiple databases by implementing strategies for determining when to write and read the latest version, resolving conflicts between data source updates and user edits, and controlling access at various levels, using a centralized server to integrate and transform data from diverse sources into different database formats.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the system writes the latest version of ontology data to all multiple databases immediately, then versioning consistency is improved, but the time required for write operations and system performance deteriorate
Solution Approach 1:
The system performs preliminary versioning by creating a new version identifier and updating the canonical database first, before propagating changes to other databases. This allows the write operation to be initiated and partially completed in advance, reducing the overall time impact when consistency is later enforced across all databases.
Solution Approach 2:
The system segments the versioning process into distinct phases: immediate version creation in the canonical database, and deferred synchronization to other databases. This segmentation allows the critical path write operation to complete faster while consistency is maintained through asynchronous propagation.
2Measurement precision
If the system reads the latest version from all multiple databases to ensure consistency, then versioning accuracy is improved, but the complexity of access control and read operations increases
Solution Approach 1:
The system applies different quality levels to different databases: the canonical database maintains the highest versioning accuracy and is the primary source for reads, while other databases serve as secondary sources with potentially delayed synchronization. This local quality differentiation simplifies access control by establishing a clear hierarchy.
Solution Approach 2:
Instead of requiring reads to check all databases for the latest version, the system inverts the approach by having readers assume the canonical database contains the authoritative version unless specified otherwise. This inversion simplifies read operations while maintaining versioning accuracy.
3Reliability
If the system implements granular access control at multiple levels, then security and access management are improved, but the device complexity and operational difficulty increase
Solution Approach 1:
The system adds a new dimension to access control by implementing hierarchical levels (canonical vs. other databases, different user roles, read vs. write permissions). This multi-dimensional approach organizes complexity in a structured way that improves security while making operations easier through clear rules at each level.
4Reliability
If the system synchronizes ontology data across multiple databases in real-time, then data consistency is improved, but the productivity and performance of the system deteriorate
Solution Approach 1:
The system implements periodic synchronization rather than continuous real-time synchronization. Version updates are propagated to other databases at scheduled intervals or triggered by specific events, maintaining data consistency while reducing the performance overhead compared to constant synchronization.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A system for managing versioning of ontology data represented in multiple forms respectively in multiple databases and related methods are disclosed. The system is programmed to determine which changes to the ontology are to be incorporated into a new version of specific ontology data. In response to a write request to write a latest version of specific ontology data, the system is programmed to start representing the latest version in the multiple databases according to a first predetermined strategy. In response to a read request to read a latest version, the system is programmed to return a particular version from at least one of the multiple databases according to a second predetermined strategy.