Distributed Database Transaction Scheduling via Queue Load Monitoring
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In distributed database systems, scheduling higher priority transactions alongside other transactions can increase system latency due to the formation of transaction queues, particularly when the load exceeds certain thresholds.
Innovation Solution
A method is implemented where the execution of database transactions is delayed if the transaction queue load exceeds a first-water mark, with a specified portion being executed after a delay period, and further processing occurs if the queue load drops below a second-water mark, dynamically adjusting based on queue load parameters.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If higher priority transactions are scheduled equally with other transactions in the queue, then transaction priority is maintained, but system latency increases
Solution Approach 1:
The patent implements dynamic transaction scheduling where the scheduling policy changes based on real-time queue load conditions. When queue load is below a threshold, higher priority transactions are processed immediately. When queue load exceeds the threshold, the system dynamically switches to delaying higher priority transactions until load decreases, thus adapting the scheduling behavior to current system state to prevent latency accumulation.
Solution Approach 2:
The system monitors queue load as a dynamic parameter and uses it to control transaction processing. By comparing the number of transactions in the queue against a predefined threshold, the system changes the processing parameter (immediate execution vs. delayed execution) for higher priority transactions, optimizing the balance between priority maintenance and latency reduction.
2Speed
If transactions are processed immediately upon arrival, then processing speed is maintained, but queue load increases causing latency
Solution Approach 1:
The patent implements a feedback mechanism where the system continuously monitors the queue load (number of transactions in the queue) and uses this information to control transaction processing. When the monitored queue load exceeds a predefined threshold, the system provides feedback to delay processing of higher priority transactions, creating a closed-loop control system that prevents queue overload and reduces latency.
Data Source
AI summary
In one exemplary embodiment, a method of a distributed database system includes the step of receiving a database transaction with a node of the distributed database system. A priority of the database transaction is determined. A load of a transaction queue of the node is determined. The execution of a database transaction is delayed if the load of the transaction queue is greater than a first-water mark. The database transaction is delayed for a specified period. A portion of the database transaction is execution after the specified period. It is determined if the load of the queue is below a second-water mark after the specified period. A remaining portion of the database transaction can be processed if the load of the queue is below the second-water mark.


