Energy-aware SQL query acceleration through FPGA-based dynamic partial reconfiguration

In this paper, we propose an approach for energy-aware FPGA-based query acceleration for databases on embedded devices. After the analysis of an incoming query, a query-specific hardware accelerator is generated on-the-fly and loaded on the FPGA for subsequent query execution using partial dynamic reconfiguration. For each SQL query operation, a pre-synthesized partial bitstream implementation exists in a module library. This library includes modules for all major SQL operations like restrictions, aggregations, as well as more complex operations such as join and sort. The implementation of this flexible FPGA-based query accelerator approach on the embedded low-energy system-on-chip (SoC) platform Xilinx Zynq shows SQL query processing speeds comparable to high-end database servers, however, at a much lower energy consumption. Indeed, provided experimental results give evidence that the proposed architecture may reduce the amount of consumed energy to just 5% of the energy needed of an in-memory database system running on an x86-based server at equal throughput for respective benchmarks.

[1]  Bharat Sukhwani,et al.  Accelerating Join Operation for Relational Databases with FPGAs , 2013, 2013 IEEE 21st Annual International Symposium on Field-Programmable Custom Computing Machines.

[2]  Stephen R. Gardner Building the data warehouse , 1998, CACM.

[3]  Chongling Nie An FPGA-based smart database storage engine , 2012 .

[4]  Volker Linnemann,et al.  Hardware-accelerated join processing in large Semantic Web databases with FPGAs , 2013, 2013 International Conference on High Performance Computing & Simulation (HPCS).

[5]  J. Koomey Worldwide electricity used in data centers , 2008 .

[6]  Jürgen Teich,et al.  Acceleration of SQL Restrictions and Aggregations through FPGA-Based Dynamic Partial Reconfiguration , 2013, 2013 IEEE 21st Annual International Symposium on Field-Programmable Custom Computing Machines.

[7]  Paul Chow,et al.  ZCluster: A Zynq-based Hadoop cluster , 2013, 2013 International Conference on Field-Programmable Technology (FPT).

[8]  Information technology — Database languages — SQL — Part 1: Framework (SQL/Framework) , 2022 .

[9]  Parthasarathy Ranganathan,et al.  Energy Efficiency: The New Holy Grail of Data Management Systems Research , 2009, CIDR.

[10]  Christopher Chute,et al.  The Diverse and Exploding Digital Universe , 2011 .

[11]  Gustavo Alonso,et al.  Parallel Computation of Skyline Queries , 2013, 2013 IEEE 21st Annual International Symposium on Field-Programmable Custom Computing Machines.

[12]  Takashi Takenaka,et al.  A scalable complex event processing framework for combination of SQL-based continuous queries and C/C++ functions , 2012, 22nd International Conference on Field Programmable Logic and Applications (FPL).

[13]  Jürgen Teich,et al.  On-the-fly Composition of FPGA-Based SQL Query Accelerators Using a Partially Reconfigurable Module Library , 2012, 2012 IEEE 20th International Symposium on Field-Programmable Custom Computing Machines.

[14]  Antti Ylä-Jääski,et al.  Energy- and Cost-Efficiency Analysis of ARM-Based Clusters , 2012, 2012 12th IEEE/ACM International Symposium on Cluster, Cloud and Grid Computing (ccgrid 2012).

[15]  Gustavo Alonso,et al.  Glacier: a query-to-hardware compiler , 2010, SIGMOD Conference.

[16]  Jim Tørresen,et al.  FPGASort: a high performance sorting architecture exploiting run-time reconfiguration on fpgas for large problem sorting , 2011, FPGA '11.

[17]  Jim Tørresen,et al.  Go Ahead: A Partial Reconfiguration Framework , 2012, 2012 IEEE 20th International Symposium on Field-Programmable Custom Computing Machines.

[18]  Raghunath Othayoth Nambiar,et al.  The making of TPC-DS , 2006, VLDB.