GeoTP: Latency-aware Geo-Distributed Transaction Processing in Database Middlewares (Extended Version)
Qiyu Zhuang, Xinyue Shi, Shuang Liu, Wei Lu, Zhanhao Zhao, Yuxing Chen, Tong Li, Anqun Pan, Xiaoyong Du
TL;DR
GeoTP tackles the challenge of geo-distributed transactions in database middlewares by introducing three latency-aware techniques that avoid kernel changes to data sources. It deploys a decentralized prepare to cut one WAN round trip, a latency-aware scheduler to minimize lock-contention spans, and heuristic optimizations to handle high-contention workloads, all realized on Apache Shardingsphere and ScalarDB. The approach is validated on YCSB and TPC-C, showing up to 17.7x throughput improvement over the baseline and competitive performance against distributed databases under various conditions. These results underscore GeoTP’s practical potential for efficient, scalable cross-region transaction processing in heterogeneous database environments.
Abstract
The widespread adoption of database middleware for supporting distributed transaction processing is prevalent in numerous applications, with heterogeneous data sources deployed across national and international boundaries. However, transaction processing performance significantly drops due to the high network latency between the middleware and data sources and the long lock contention span, where transactions may be blocked while waiting for the locks held by concurrent transactions. In this paper, we propose GeoTP, a latency-aware geo-distributed transaction processing approach in database middlewares. GeoTP incorporates three key techniques to enhance geo-distributed transaction performance. First, we propose a decentralized prepare mechanism, which diminishes the requirement of network round trips for distributed transactions. Second, we design a latency-aware scheduler to minimize the lock contention span by strategically postponing the lock acquisition time point. Third, heuristic optimizations are proposed for the scheduler to reduce the lock contention span further. We implemented GeoTP on Apache Shardingsphere, a state-of-the-art middleware, and extended it into Apache ScalarDB. Experimental results on YCSB and TPC-C demonstrate that GeoTP achieves up to 17.7x performance improvement over Shardingsphere.
