Improving Database Performance by Application-side Transaction Merging
By: Xueyuan Ren, Frank Li, Yang Wang
This paper explores a new opportunity to improve the performance of transaction processing at the application side by merging structurely similar statements or transactions. Concretely, we re-write transactions to 1) merge similar statements using specific SQL semantics; 2) eliminate redundant reads; and 3) merge contending statements across transactions by pre-computing their aggregated effect. Following this idea, we present the design of TransactionMerger, a middleware to collect and merge transactions across different clients. We further present a static analysis tool to identify the merging opportunity without violating isolation as well as our experience of re-writing transactions in TPC-C and Spree, a popular real-world application. Our evaluation shows that such transaction merging can improve TPC-C throughput by up to 2.65X and Spree throughput by 3.52X.
Similar Papers
Anomaly Pattern-guided Transaction Bug Testing in Relational Databases
Databases
Finds hidden bugs in computer databases.
Transactional Cloud Applications: Status Quo, Challenges, and Opportunities
Databases
Helps apps work better and cheaper in the cloud.
Using Read Promotion and Mixed Isolation Levels for Performant Yet Serializable Execution of Transaction Programs
Databases
Keeps computer programs from messing up data.