Transaction Control Block for MVCC Commit Latency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Multiversion concurrency control (MVCC) database systems face performance issues due to long latencies incurred during transaction commit operations, affecting database performance and reader-writer access concurrency.
Innovation Solution
The implementation of a transaction control block (TCB) system manages commit status and versioning information to provide consistent database views, allowing readers to access data snapshots while writers commit transactions, reducing latency through efficient management of commit operations and garbage collection processes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the database stores multiple versions of data for MVCC, then readers can access consistent snapshots concurrently, but the commit operation latency increases due to updating version information for all database values
Solution Approach 1:
The patent segments the commit operation into two phases: a preparation phase where version information is updated in the transaction control block, and a completion phase where the commit is finalized. This segmentation allows readers to access data with consistent version information without waiting for the entire commit process to complete, thereby reducing commit latency while maintaining data consistency.
Solution Approach 2:
The patent introduces a transaction control block as an intermediary structure that stores version information and commit status separately from the actual database values. This intermediary allows the system to track and manage version information efficiently, enabling readers to access consistent snapshots without incurring the full latency of traditional commit operations.
2Productivity
If the database marks old data as obsolete and adds new data versions, then concurrent readers and writers can access data, but the device complexity increases due to managing multiple versions and commit status
Solution Approach 1:
The transaction control block serves multiple functions: it stores version information for database values, tracks commit status, and provides a mechanism for readers to determine which versions to access. This multi-functionality reduces the need for separate structures and simplifies the overall system complexity while maintaining high concurrency capabilities.
Solution Approach 2:
The patent performs preliminary actions by pre-establishing the transaction control block structure and version information tracking mechanisms before commit operations begin. This preliminary setup enables efficient concurrent access without requiring complex real-time coordination during commit operations, thereby reducing overall system complexity.
Data Source
AI summary
Disclosed herein are system, method, and computer program product embodiments for utilizing a transaction control block for providing reader-writer access to transaction commit status. An embodiment operates by receiving a row read request and determining that the row is versioned. The system determines that a first timestamp information for a row destroy transaction associated with the row exists in a transaction control block and retrieves the first timestamp information from the transaction control block.


