Hybrid Transaction Management for Database Concurrency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing transaction management systems face performance overhead and data size limitations when handling large data transactions, particularly with hardware transactional memory (HTM), which can lead to deadlocks and inefficiencies in concurrency control for large data objects.
Innovation Solution
A hybrid transaction processing system that combines optimistic and blocking mechanisms, utilizing transactional memory (TM) to manage data objects without a lock manager, employing transaction tags to determine access status and update data objects lock-free via Hardware Transactional Memory (HTM), allowing for efficient conflict detection and resolution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If hardware transactional memory (HTM) is used to manage large data transactions, then concurrency control is simplified, but performance overhead increases and data size limitations occur
Solution Approach 1:
The patent segments the transaction management approach by dividing data objects into different categories: small data objects managed by HTM and large data objects managed by a hybrid mechanism combining STM with lock-free techniques. This segmentation allows each data size category to be handled by the most appropriate mechanism, avoiding the performance overhead and size limitations of pure HTM while maintaining concurrency control benefits.
Solution Approach 2:
The patent changes the management parameter based on data object size. For small data objects, HTM parameters are used (simplified concurrency control). For large data objects, the system transitions to a hybrid approach with different parameters: STM-based transaction tags for tracking and lock-free update techniques. This parameter change resolves the contradiction by adapting the management strategy to the specific data size context.
2Reliability
If traditional locking mechanisms are used to manage large data objects, then data consistency is maintained, but deadlock situations and lock-wait timeouts increase
Solution Approach 1:
The patent substitutes the mechanical locking system with a transactional tagging system. Instead of using physical locks that can cause deadlocks and timeouts, the system uses software-based transaction tags to track access status and intent of data objects. This substitution eliminates the harmful effects of traditional locking (deadlocks, timeouts) while maintaining data consistency through transactional semantics and conflict detection.
Solution Approach 2:
The patent introduces transaction tags as an intermediary mechanism between multiple transactions accessing large data objects. These tags serve as mediators that track access intent and status without requiring direct blocking between transactions. The conflict detection mechanism uses these tags to identify and resolve conflicts, maintaining data consistency while avoiding the deadlock problems of direct locking mechanisms.
3Productivity
If hardware transactional memory (HTM) is used, then execution concurrency is increased, but data size limitations are imposed
Solution Approach 1:
The patent segments the data management approach by data object size, using HTM for small data objects where it provides excellent concurrency with no size limitations, and a hybrid STM-based approach for large data objects. This segmentation allows the system to maintain high execution concurrency for small objects while handling large objects through alternative mechanisms that don't suffer from HTM's size constraints.
Solution Approach 2:
The patent implements a dynamic data management system that adapts the transaction management mechanism based on the size of the data object being accessed. The system dynamically selects between HTM and the hybrid STM-based approach, allowing execution concurrency to be maximized for small objects while accommodating large objects through the flexible hybrid mechanism that can handle arbitrary data sizes.
Data Source
AI summary
Systems, methods, and products for database system transaction management are provided herein. One aspect provides for annotating via a computing device at least one data object residing on the computing device utilizing at least one transaction tag, the at least one transaction tag being configured to indicate a status of an associated data object; processing at least one database transaction utilizing a transactional memory process, wherein access to the at least one data object is determined based on the status of the at least one data object; and updating the status of the at least one data object responsive to an attempted access of the at least one data object by the at least one database transaction. Other embodiments and aspects are also described herein.


