Avionics Database Replica Synchronization via Version Numbers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing database management methods for avionics systems face challenges in meeting real-time processing constraints while adhering to limited computing and memory resources, often resulting in delayed transactions due to database locking and inefficiencies in resource utilization.
Innovation Solution
A method for managing a database shared among applications, where each application maintains a replica with a value and version number, allowing independent updates and synchronization through version number comparisons, ensuring real-time processing and coherence without the need for centralized locking, thus optimizing resource usage.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a centralized database with locking mechanisms is used to ensure data coherence, then data consistency is improved, but real-time processing capability deteriorates due to transaction delays
Solution Approach 1:
The centralized database is segmented into multiple distributed replicas, each maintained by different applications. This segmentation eliminates the need for centralized locking while maintaining data coherence through version number comparisons and conflict detection mechanisms.
Solution Approach 2:
Version numbers are introduced as intermediaries to mediate conflict detection between distributed replicas. Instead of direct locking mechanisms, the system uses version number comparisons to identify conflicts and determine which updates should be applied, enabling asynchronous updates without blocking other transactions.
2Loss of time
If fixed work frequency methods are implemented to achieve desired processing times, then real-time constraints are satisfied, but computing and memory resource consumption increases
Solution Approach 1:
The system transitions from fixed work frequency to dynamic asynchronous updates. Each application updates its database replica at its own pace based on its specific needs, rather than adhering to a rigid global schedule. This dynamic approach reduces unnecessary resource consumption while still meeting real-time constraints when needed.
Solution Approach 2:
Each application autonomously manages its own database replica updates without being constrained by a centralized scheduler. Applications independently determine when to update their replicas based on their specific requirements, eliminating the overhead of centralized scheduling while ensuring updates occur when necessary.
3Reliability
If centralized database locking is used to prevent inconsistent updates, then data consistency is improved, but system productivity deteriorates due to transaction wait times
Solution Approach 1:
The database is segmented into independent replicas distributed across multiple applications. This segmentation allows parallel updates without centralized coordination, dramatically improving transaction throughput while maintaining consistency through version number-based conflict detection and resolution.
Solution Approach 2:
The system enables continuous asynchronous updates across all replicas simultaneously, rather than sequential locked updates. Multiple applications can read and write to their respective replicas continuously without waiting for centralized lock releases, maximizing system productivity while maintaining data integrity.
Data Source
AI summary
The invention relates to a method for managing a database shared by a group of applications. The database comprises elements, each comprising a value and a version number. Each application comprises a replica of the database.The method comprises a step for modifying the value of an element in the replica of an application, called active application, a step for incrementing the version number of said element in said replica of the active application, a step for transmitting, via the active application, transmission data to the other applications, the transmission data comprising the modified element, and an earlier version number of this modified element, a synchronization step, during which at least one application other than the active application updates its replica based on a comparison of the earlier version number with that of said element in this replica.


