返回
Two-Phase Locking Optimization Towards Dynamic High-Contented Workloads
DOI:10.1109/tkde.2026.3724702.png)
摘要
En 中文
两阶段锁定(2PL)是一种基础且广泛使用的并发控制协议。它通过在事务执行期间遵循特定的锁获取和释放顺序来规范数据库数据的并发访问,从而确保事务隔离。然而,在严格两阶段锁定中,事务必须等待冲突事务提交并释放其锁,这降低了并发性和系统吞吐量。我们观察到,在腾讯的高冲突工作负载中,这个问题会加剧,锁争用可能导致系统性能严重下降。虽然现有优化在高冲突场景下显示出一定效果,但其性能仍然不足,因为它们受到锁争用和热点访问等待的影响。本文介绍了腾讯数据库TXSQL中实现的锁管理优化,特别关注高冲突场景。首先,我们讨论了我们的动机和通用锁优化的历程,其中包括轻量级锁管理、无拷贝活动事务列表以及通过队列锁定机制有效提升并发性的方法。其次,我们介绍了一种热点感知方法,使某些高度冲突的事务能够切换到组锁定方法,该方法将冲突事务分组到特定热点,允许它们在不需加锁的情况下在冲突组内以未提交状态串行执行,从而减少锁争用。我们的评估表明,在高冲突工作负载下,TXSQL相比当前最优方法和系统分别实现了最高6.5倍和22.3倍的性能提升。
Keyword:
Optimization
Databases
Protocols
System recovery
Schedules
Scheduling
Synchronization
Timing
Concurrency control
Database systems
期刊
IF:
10.4
论文数:
6.8K
被引数:
3.2W
机构
引用论文
暂无论文信息

