Transaction Optimization: Self-developed System for Transaction Concurrency Control (adapted to the highly elastic RG architecture)
Adaptive Lock Manager for Hotspots: efficiently supports pessimistic locking on LSM-trees. The lock manager can split along with regions, effectively dispersing hotspot bottlenecks.
Distributed Deadlock Detection Algorithm: adopts the lowest-overhead centralized deadlock detection to ensure optimal performance.
Traditional Solutions and their Limitations
Conventional approach in the industry: using a hash lock map with a fixed number of buckets to manage waits for transaction locks.
There are two problems:
Under a highly elastic architecture, migration of transaction lock is inefficient.
Predicate locks are not supported, leading to phantom reads under the Repeatable Read (RR) isolation level.
TDStore Data Sharding Coordinated Solution
TDStore employs a lock map for sorting to support locking specific key ranges.
The lock manager is bound to region shards and can split along with regions.