Multiple Log Queues for Database Transaction Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Database systems face performance issues due to transaction collisions and delays in writing transaction data to log queues when using parallel processing techniques, as multiple transactions compete to be written to a single log queue.
Innovation Solution
Implementing multiple log queues with separate writers and log queue identifiers, allowing log records from different transaction threads to be written concurrently, and associating each record with a unique identifier for accurate recovery and sorting during restarts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multiple transactions are processed in parallel using multiprocessing techniques, then processing speed and productivity are improved, but transaction collisions and delays occur when writing to a single log queue
Solution Approach 1:
The patent divides the single log queue into multiple separate log queues (first log queue, second log queue, third log queue), each handled by its own dedicated log writer. This segmentation allows parallel transactions to write to different queues simultaneously, eliminating collisions while maintaining high processing speed.
2Device complexity
If a single log queue is used for all transactions, then device complexity is reduced, but performance deteriorates due to transaction collisions and waiting delays
Solution Approach 1:
The patent segments the log writing function into multiple independent log queues with dedicated writers, increasing complexity slightly but achieving significant productivity improvement by eliminating the bottleneck of a single shared queue.
Solution Approach 2:
The patent introduces a new dimension of organization by assigning log queue identifiers and writer sequence identifiers to log records, enabling concurrent writes from multiple threads without interference while maintaining orderly processing through identifier-based sorting and sequencing.
3Productivity
If parallel processing is implemented to improve performance, then processing throughput increases, but data consistency and recovery accuracy become more difficult to maintain
Solution Approach 1:
The patent performs preliminary actions by assigning log queue identifiers and writer sequence identifiers to each log record before writing. These pre-assigned identifiers enable accurate sorting and sequencing during recovery operations, ensuring data consistency even when parallel processing is used.
Solution Approach 2:
The patent implements feedback mechanisms through the log reader that uses writer sequence identifiers and log queue identifiers to correctly order and process log records during recovery, ensuring accurate data reconstruction despite parallel write operations.
Data Source
AI summary
A system, method, apparatus, means and computer program code for utilizing multiple log queues in a database management system are provided. In some embodiments, processing includes receiving a first log record at a first log queue and a second log record at a second log queue, associating a log queue identifier with each of the first and second log records, and writing the first and second log records to a data log. Pursuant to some embodiments, at least a third log queue is provided.


