Efficient Co-Processing of Relational Data

a generic strategy for efficient CPU/GPU cooperation. We propose such a strategy for relational query processing: calculating an approximate result based on lossily compressed, GPU-resident data and refine the result using residuals, i.e., the lost data, on the CPU. We developed the required algorithms, implemented the strategy in an existing DBMS and found up to 8 times performance improvement, even for datasets larger than the available GPU memory.

[1]  Peter Boncz,et al.  UvA-DARE ( Digital Academic Repository ) Monet ; a next-Generation DBMS Kernel For Query-Intensive Applications , 2007 .

[2]  Daniel J. Abadi,et al.  Column-stores vs. row-stores: how different are they really? , 2008, SIGMOD Conference.

[3]  Bingsheng He,et al.  Relational joins on graphics processors , 2008, SIGMOD Conference.

[4]  Martin L. Kersten,et al.  X-device query processing by bitwise distribution , 2012, DaMoN '12.

[5]  Alexander Zeier,et al.  HYRISE - A Main Memory Hybrid Storage Engine , 2010, Proc. VLDB Endow..

[6]  Bingsheng He,et al.  GPUQP: query co-processing using graphics processors , 2007, SIGMOD '07.

[7]  Sridhar Ramaswamy,et al.  The Aqua approximate query answering system , 1999, SIGMOD '99.

[8]  Martin L. Kersten,et al.  Accelerating Foreign-Key Joins using Asymmetric Memory Channels , 2011, ADMS@VLDB.

[9]  Tian Luo,et al.  hStorage-DB: Heterogeneity-aware Data Management to Exploit the Full Capability of Hybrid Storage Systems , 2012, Proc. VLDB Endow..

[10]  Setrag Khoshafian,et al.  A decomposition storage model , 1985, SIGMOD Conference.

[11]  Bingsheng He,et al.  Database compression on graphics processors , 2010, Proc. VLDB Endow..

[12]  Steven Swanson,et al.  The bleak future of NAND flash memory , 2012, FAST.

[13]  Bingsheng He,et al.  Relational query coprocessing on graphics processors , 2009, TODS.

[14]  Wolfgang Lehner,et al.  Designing Random Sample Synopses with Outliers , 2008, 2008 IEEE 24th International Conference on Data Engineering.

[15]  Peter Benjamin Volk,et al.  GPU join processing revisited , 2012, DaMoN '12.

[16]  Kim M. Hazelwood,et al.  Where is the data? Why you cannot debate CPU vs. GPU performance without the answer , 2011, (IEEE ISPASS) IEEE INTERNATIONAL SYMPOSIUM ON PERFORMANCE ANALYSIS OF SYSTEMS AND SOFTWARE.

[17]  Martin Grund,et al.  A Demonstration of HYRISE - A Main Memory Hybrid Storage Engine , 2011, Proc. VLDB Endow..

[18]  Martin Grund,et al.  CPU and cache efficient management of memory-resident databases , 2013, 2013 IEEE 29th International Conference on Data Engineering (ICDE).

[19]  Burton H. Bloom,et al.  Space/time trade-offs in hash coding with allowable errors , 1970, CACM.

[20]  Kevin Skadron,et al.  Accelerating SQL database operations on a GPU with CUDA , 2010, GPGPU-3.

[21]  Martin L. Kersten,et al.  Breaking the memory wall in MonetDB , 2008, CACM.

[22]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .

[23]  David J. DeWitt,et al.  Weaving Relations for Cache Performance , 2001, VLDB.

[24]  Thomas Neumann,et al.  Efficiently Compiling Efficient Query Plans for Modern Hardware , 2011, Proc. VLDB Endow..

[25]  E. F. Codd,et al.  A relational model of data for large shared data banks , 1970, CACM.