1 / 21

@ andy_pavlo

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.

kylene
Download Presentation

@ andy_pavlo

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Making Fast Databases FASTER @andy_pavlo

  2. Fast + Cheap If a system is already fast, can we make it faster without giving up ACID?

  3. Main Memory • Parallel • Shared-Nothing Transaction Processing

  4. Stored Procedure Execution Procedure Name Input Parameters Transaction Result Client Application

  5. TPC-C NewOrder

  6. Optimization #1: Partition database to reduce the number of distributed txns. Skew-Aware Automatic Database Partitioning in Shared-Nothing, Main Memory OLTP SystemsIn Submission

  7. CUSTOMER ITEM CUSTOMER ORDERS CUSTOMER CUSTOMER CUSTOMER ORDERS ORDERS ORDERS ITEM ITEM ITEM

  8. 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

  9. TATP TPC-C

  10. ? ? Client Application ?

  11. 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

  12. Client Application

  13. Houdini Assume Single-Partitioned (txn/s) TATP TPC-C AuctionMark +57% +126% +117%

  14. Conclusion: Achieving fast performance ismore than just using only RAM. Future Work: Reduce distributed txn overhead through creative scheduling.

  15. h-store hstore.cs.brown.edu github.com/apavlo/h-store

  16. Help is Available +1- 617-258-6643 Graduate Student Abuse HotlineAvailable24/7 Collect Calls Accepted

More Related