210 likes | 332 Vues
Explore innovative techniques to enhance the speed of already fast databases without compromising ACID compliance. This paper discusses partitioning databases to minimize distributed transactions and introduces skew-aware automatic partitioning in shared-nothing, main memory OLTP systems. Additionally, we delve into predictive modeling to optimize transaction execution in parallel environments. Our findings exemplify that boosting database performance extends beyond the mere utilization of RAM.
E N D
Making Fast Databases FASTER @andy_pavlo
Fast + Cheap If a system is already fast, can we make it faster without giving up ACID?
Main Memory • Parallel • Shared-Nothing Transaction Processing
Stored Procedure Execution Procedure Name Input Parameters Transaction Result Client Application
Optimization #1: Partition database to reduce the number of distributed txns. Skew-Aware Automatic Database Partitioning in Shared-Nothing, Main Memory OLTP SystemsIn Submission
CUSTOMER ITEM CUSTOMER ORDERS CUSTOMER CUSTOMER CUSTOMER ORDERS ORDERS ORDERS ITEM ITEM ITEM
DDL CUSTOMER NewOrder SELECT * FROM WAREHOUSE WHERE W_ID = 10; SELECT * FROM DISTRICT WHERE D_W_ID = 10 AND D_ID =9; INSERT INTO ORDERS (O_W_ID, O_D_ID, O_C_ID,…) VALUES(10, 9, 12345,…); ⋮ SELECT * FROM WAREHOUSE WHERE W_ID = 10; SELECT * FROM DISTRICT D_W_ID = 10 AND D_ID =9; INSERT INTO ORDERS (O_W_ID, O_D_ID, O_C_ID) VALUES (10, 9, 12345); ⋮ SELECT * FROM WAREHOUSE WHERE W_ID = 10; INSERT INTO ORDERS (O_W_ID, O_D_ID, O_C_ID) VALUES (10, 9, 12345); ⋮ ITEM DDL SELECT * FROM WAREHOUSE WHERE W_ID = 10; INSERT INTO ORDERS (O_W_ID, O_D_ID, O_C_ID) VALUES (10, 9, 12345); ⋮ Schema ORDERS DTxn Estimator Skew Estimator ------- -------------- Workload Large-Neighorhood Search Algorithm … CUSTOMER CUSTOMER CUSTOMER CUSTOMER ORDERS ORDERS ORDERS ORDERS ITEM ITEM ITEM ITEM
TATP TPC-C
? ? Client Application ?
Optimization #2: Predict what txns will do before they execute. On Predictive Modeling for OptimizingTransaction Execution in Parallel OLTP Systemsin PVLDB, vol 5. issue 2, October 2011
Client Application
Houdini Assume Single-Partitioned (txn/s) TATP TPC-C AuctionMark +57% +126% +117%
Conclusion: Achieving fast performance ismore than just using only RAM. Future Work: Reduce distributed txn overhead through creative scheduling.
h-store hstore.cs.brown.edu github.com/apavlo/h-store
Help is Available +1- 617-258-6643 Graduate Student Abuse HotlineAvailable24/7 Collect Calls Accepted