q100 the architecture and design of a database processing
play

Q100: The Architecture and Design of a DATABASE PROCESSING UNIT - PowerPoint PPT Presentation

Q100: The Architecture and Design of a DATABASE PROCESSING UNIT Lisa Wu, Andrea Lottarini, Tim Paine, Martha Kim, and Ken Ross Columbia University, NYC 1 Thursday, March 6, 2014 DPUs are analogous to GPUs Graphics Database Workloads


  1. Q100: The Architecture and Design of a DATABASE PROCESSING UNIT Lisa Wu, Andrea Lottarini, Tim Paine, Martha Kim, and Ken Ross Columbia University, NYC 1 Thursday, March 6, 2014

  2. DPUs are analogous to GPUs Graphics Database Workloads Workloads CPU GPU CPU DPU 02/27/14 Columbia University 2 Thursday, March 6, 2014

  3. Q100: A Stream-Based DPU 02/27/14 Columbia University 3 Thursday, March 6, 2014

  4. Q100: A Stream-Based DPU • Accelerates analytic queries 02/27/14 Columbia University 3 Thursday, March 6, 2014

  5. Q100: A Stream-Based DPU • Accelerates analytic queries The sale of Sales an airline Projection ticket Transactional Analytic Processing Processing 02/27/14 Columbia University 3 Thursday, March 6, 2014

  6. Q100: A Stream-Based DPU • Accelerates analytic queries • Direct hardware support for relational operators 02/27/14 Columbia University 3 Thursday, March 6, 2014

  7. Q100: A Stream-Based DPU • Accelerates analytic queries • Direct hardware support for relational operators JOIN SORT SELECT AGGRE- GATE 02/27/14 Columbia University 3 Thursday, March 6, 2014

  8. Q100: A Stream-Based DPU • Accelerates analytic queries • Direct hardware support for relational operators • Processes data as streams 02/27/14 Columbia University 3 Thursday, March 6, 2014

  9. Q100: A Stream-Based DPU • Accelerates analytic queries • Direct hardware support for relational operators • Processes data as streams IN OUT Relational Operator 02/27/14 Columbia University 3 Thursday, March 6, 2014

  10. Q100: A Stream-Based DPU • Accelerates analytic queries • Direct hardware support for relational operators • Processes data as streams • Combines spatial and temporal instructions to form a DPU ISA 02/27/14 Columbia University 3 Thursday, March 6, 2014

  11. Query SELECT s_season, SUM(s_qty) as sum_qty FROM sales WHERE s_shipdate >= ‘2013-01-01’ GROUP BY s_season ORDER BY s_season 02/27/14 Columbia University 4 Thursday, March 6, 2014

  12. Query SELECT s_season, SUM(s_qty) as sum_qty FROM sales WHERE s_shipdate >= ‘2013-01-01’ GROUP BY s_season Plan ORDER BY s_season SALES Table2 Col6 Col Col1 Col4 Col Col SelectCol Agg Col7 Select Filter Select Parti- Append Table3 Col5 tion Col8 Col2 Col Col Col Table6 SelectCol Col9 Table1 Agg Select Filter Select Table4 Bool1 Append Col3 Col10 Col Col Bool SelectCol Table7 Select Gen Agg Col11 Stitch Select Append Table5 Col12 Col SelectCol Final Agg Col13 Answer Select 02/27/14 Columbia University 4 Thursday, March 6, 2014

  13. Query SELECT s_season, SUM(s_qty) as sum_qty FROM sales WHERE s_shipdate >= ‘2013-01-01’ GROUP BY s_season Plan ORDER BY s_season SALES Table2 Col6 Col Col1 Col4 Col Col SelectCol Agg Col7 Select Filter Select Parti- Append Table3 Col5 tion Col8 Col2 Col Col Col Table6 SelectCol Col9 Table1 Agg Select Filter Select Table4 Bool1 Append Col3 Col10 Col Col Bool SelectCol Table7 Select Gen Agg Col11 Stitch Select Nodes = Relational Operators Append Table5 Col12 Col Edges = Data Dependencies SelectCol Final Agg Col13 Answer Select 02/27/14 Columbia University 4 Thursday, March 6, 2014

  14. SALES Table2 Col6 Query Col Col1 Col4 Col Col SelectCol Agg Col7 Select Filter Select Parti- Append Table3 Col5 tion Col8 Col2 Col Col Col Table6 SelectCol Table1 Col9 Agg Select Filter Select Table4 Bool1 Append Col3 Col10 Col Col Bool SelectCol Table7 Agg Select Gen Col11 Stitch Select Plan Append Table5 Col12 Col SelectCol Final Col13 Agg Answer Select Q100 MEMORY Program Q100 Device INTERCONNECT MEMORY 02/27/14 Columbia University 5 Thursday, March 6, 2014

  15. SALES Table2 Col6 Query Col Col1 Col4 Col Col SelectCol Agg Col7 Select Filter Select Parti- Append Table3 Col5 tion Col8 Col2 Col Col Col Table6 SelectCol Table1 Col9 Agg Select Filter Select Table4 Bool1 Append Col3 Col10 Col Col Bool SelectCol Table7 Agg Select Gen Col11 Stitch Select Plan Append Table5 Col12 Col SelectCol Final Col13 Agg Answer Select Q100 MEMORY Program Q100 Device INTERCONNECT MEMORY 02/27/14 Columbia University 5 Thursday, March 6, 2014

  16. SALES Table2 Col6 Query Col Col1 Col4 Col Col SelectCol Agg Col7 Select Filter Select Parti- Append Table3 Col5 tion Col8 Col2 Col Col Col Table6 SelectCol Table1 Col9 Agg Select Filter Select Table4 Bool1 Append Col3 Col10 Col Col Bool SelectCol Table7 Agg Select Gen Col11 Stitch Select Plan Append Table5 Col12 Col SelectCol Final Col13 Agg Answer Select Q100 MEMORY Program Q100 Device INTERCONNECT MEMORY 02/27/14 Columbia University 5 Thursday, March 6, 2014

  17. Query SALES Table2 Col6 Col Col1 Col4 Col Col SelectCol Agg Col7 Select Filter Select Parti- Append Table3 Col5 tion Col8 Col2 Col Col Col Table6 SelectCol Col9 Table1 Agg Select Filter Plan Select Table4 Bool1 Append Col3 Col10 Col Col Bool SelectCol Table7 Select Gen Agg Col11 Stitch Select Append Table5 Col12 Col SelectCol Final Agg Col13 Q100 Answer Select Program 02/27/14 Columbia University 6 Thursday, March 6, 2014

  18. Query SALES Table2 Col6 Col Col1 Col4 Col Col SelectCol Agg Col7 Select Filter Select Parti- Append Table3 Col5 tion Col8 Col2 Col Col Col Table6 SelectCol Col9 Table1 Agg Select Filter Plan Select Table4 Bool1 Append Col3 Col10 Col Col Bool SelectCol Table7 Select Gen Agg Col11 Stitch Select Append Table5 Col12 Spatial Col SelectCol Final Agg Col13 Q100 Answer Select Instructions Program 02/27/14 Columbia University 6 Thursday, March 6, 2014

  19. Query SALES Table2 Col6 Col Col1 Col4 Col Col SelectCol Agg Col7 Select Filter Select Parti- Append Table3 Col5 tion Col8 Col2 Col Col Col Table6 SelectCol Col9 Table1 Agg Select Filter Plan Select Table4 Bool1 Append Col3 Col10 Col Col Bool SelectCol Table7 Select Gen Agg Col11 Stitch Select Append Table5 Col12 Spatial Col SelectCol Final Agg Col13 Q100 Answer Select Instructions Program Temporal Instructions 02/27/14 Columbia University 6 Thursday, March 6, 2014

  20. Query SALES Table2 Col6 Col Col1 Col4 Col Col SelectCol Agg Col7 Select Filter Select Parti- Append Table3 Col5 tion Col8 Col2 Col Col Col Table6 SelectCol Col9 Table1 Agg Select Filter Plan Select Table4 Bool1 Append Col3 Col10 Col Col Bool SelectCol Table7 Select Gen Agg Col11 Stitch Select Append Table5 Col12 Spatial Col SelectCol Final Agg Col13 Q100 Answer Select Instructions Program Temporal Instructions 02/27/14 Columbia University 6 Thursday, March 6, 2014

  21. Q100 Execution and Efficiencies MEMORY SALES TABLE 02/27/14 Columbia University 7 Thursday, March 6, 2014

  22. Q100 Execution and Efficiencies MEMORY SALES TABLE 02/27/14 Columbia University 7 Thursday, March 6, 2014

  23. Q100 Execution and Efficiencies MEMORY SALES TABLE 02/27/14 Columbia University 7 Thursday, March 6, 2014

  24. Q100 Execution and Efficiencies MEMORY SALES TABLE Partitioned Tables Temp Column 02/27/14 Columbia University 7 Thursday, March 6, 2014

  25. Q100 Execution and Efficiencies MEMORY SALES TABLE Partitioned Tables Temp Column 02/27/14 Columbia University 7 Thursday, March 6, 2014

  26. Q100 Execution and Efficiencies MEMORY SALES TABLE Read datum once, perform multiple Partitioned Tables Temp Column operations 02/27/14 Columbia University 7 Thursday, March 6, 2014

  27. Q100 Execution and Efficiencies MEMORY SALES TABLE Read datum once, perform multiple Partitioned Tables Temp Column operations Pipeline Parallelism Temp Table 02/27/14 Columbia University 7 Thursday, March 6, 2014

  28. Q100 Execution and Efficiencies MEMORY SALES TABLE Read datum once, perform multiple Partitioned Tables Temp Column operations Pipeline Parallelism Data Temp Column Temp Table Parallelism 02/27/14 Columbia University 7 Thursday, March 6, 2014

  29. Q100 Execution and Efficiencies MEMORY SALES TABLE Read datum once, perform multiple Partitioned Tables Temp Column operations Pipeline Parallelism Data Temp Column Temp Table Parallelism Minimize Spills/Fills 02/27/14 Columbia University 7 Thursday, March 6, 2014

  30. Q100 Execution and Efficiencies MEMORY SALES TABLE Read datum once, perform multiple Partitioned Tables Temp Column operations Pipeline Parallelism Data Temp Column Temp Table Parallelism Minimize Spills/Fills Use coarse-grain hardware primitives that operate on coarse-grain data 02/27/14 Columbia University 7 Thursday, March 6, 2014

  31. How do we generate these How do we How do we query plans? schedule the implement these plans? operators? MEMORY INTER- CONNECT MEMORY How many tiles What kind of should there be and interconnect Is the Q100 of what type? should we use? performance and energy efficient? 02/27/14 Columbia University 8 Thursday, March 6, 2014

Recommend


More recommend