HOW TO SCALE UP WITHOUT GIVING UP
TRANSACTIONS?
High-Performance Transaction Processing System
MAIN MEMORY STORAGE
SERIAL EXECUTION
COMMAND LOGGING
STORED PROCEDURES
0
25,000
50,000
75,000
100,000
125,000
1 2 3 4 5 6 7 8
H-Store
13x
TXN/SEC CPU CORES
MySQL Postgres
Japanese “American Idol” VOTER BENCHMARK
DISTRIBUTED TRANSACTIONS
TXN/SEC NODES (8 CORES PER NODE)
10% Distributed Transactions VOTER BENCHMARK
0
20,000
40,000
60,000
80,000
100,000
1 2 3 4
H-Store
Identify Distributed Transactions ON PREDICTIVE MODELING FOR OPTIMIZING TRANSACTION EXECUTION IN PARALLEL OLTP SYSTEMS Proc. VLDB Endow., vol. 5, pp. 85-96, 2011.
Utilize Transaction Stalls THE ART OF SPECULATIVE EXECUTION In Progress (July 2014)
Optimize Single-Partition Execution H-STORE: A HIGH-PERFORMANCE, DISTRIBUTED MAIN MEMORY TRANSACTION PROCESSING SYSTEM Proc. VLDB Endow., vol. 1, iss. 2, pp. 1496-1499, 2008.
Minimize Distributed Transactions SKEW-AWARE AUTOMATIC DATABASE PARTITIONING IN SHARED-NOTHING, PARALLEL OLTP SYSTEMS Proceedings of SIGMOD, pp. 61-72, 2012.
TXN/SEC NODES (8 CORES PER NODE)
All Optimizations Enabled VOTER BENCHMARK
0
100,000
200,000
300,000
400,000
500,000
1 2 3 4
H-Store
Stan Zdonik
Mike Stonebraker
Sam Madden
Ugur Cetintemel
David DeWitt
Dan Abadi
Justin DeBrabant
Saurya Velagapudi
Aaron Elmore
Xin Jia
Carlo Curino
Evan Jones
Yang Zou
Ning Shi
Visawee Angkana.
@ANDY_PAVLO END
db.cs.cmu.edu