skip to main content
research-article

FPGA-Based Dynamically Reconfigurable SQL Query Processing

Published: 22 August 2016 Publication History

Abstract

In this article, we propose an FPGA-based SQL query processing approach exploiting the capabilities of partial dynamic reconfiguration of modern FPGAs. After the analysis of an incoming query, a query-specific hardware processing unit is generated on the fly and loaded on the FPGA for immediate query execution. For each query, a specialized hardware accelerator pipeline is composed and configured on the FPGA from a set of presynthesized hardware modules. These partially reconfigurable hardware modules are gathered in a library covering all major SQL operations like restrictions and aggregations, as well as more complex operations such as joins and sorts. Moreover, this holistic query processing approach in hardware supports different data processing strategies including row- as column-wise data processing in order to optimize data communication and processing. This article gives an overview of the proposed query processing methodology and the corresponding library of modules. Additionally, a performance analysis is introduced that is able to estimate the processing time of a query for different processing strategies and different communication and processing architecture configurations. With the help of this performance analysis, architectural bottlenecks may be exposed and future optimized architectures, besides the two prototypes presented here, may be determined.

References

[1]
Daniel J. Abadi, Samuel R. Madden, and Nabil Hachem. 2008. Column-stores vs. row-stores: How different are they really? In Proc. ACM SIGMOD International Conference on Management of Data (SIGMOD’08), Jason Tsong-Li Wang (Ed.). ACM, 967--980.
[2]
Andreas Becher, Florian Bauer, Daniel Ziener, and Jürgen Teich. 2014. Energy-aware SQL query acceleration through FPGA-based dynamic partial reconfiguration. In International Conference on Field Programmable Logic and Applications (FPL’14). 662--669.
[3]
Christian Beckhoff, Dirk Koch, and Jim Torresen. 2012. Go ahead: A partial reconfiguration framework. In IEEE 20th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM’12). 37--44.
[4]
Mark Bourgeault. 2011. Alteras Partial Reconfiguration Flow. Available online: http://www.eecg.utoronto.ca/∼jayar/FPGAseminar/FPGA-Bourgeault-June23-2011.pdf.
[5]
Christopher Claus, Rehan Ahmed, Florian Altenried, and Walter Stechele. 2010. Towards rapid dynamic partial reconfiguration in video-based driver assistance systems. In Reconfigurable Computing: Architectures, Tools and Applications. Springer, 55--67.
[6]
Transaction Processing Performance Council. 2012. TPC BENCHMARK ™DS. Standard Specification Version 1.1.0. TPC, www.tpc.org.
[7]
Christopher Dennl, Daniel Ziener, and Jürgen Teich. 2012. On-the-fly composition of FPGA-based SQL query accelerators using a partially reconfigurable module library. In IEEE 20th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM’12). 45--52.
[8]
Christopher Dennl, Daniel Ziener, and Jürgen Teich. 2013. Acceleration of SQL restrictions and aggregations through FPGA-based dynamic partial reconfiguration. In Proceedings of the IEEE International Field-Programmable Custom Computing Machines Symposium (FCCM’13). 25--28.
[9]
John F. Gantz, Christopher Chute, Alex Manfrediz, Stephen Minton, David Reinsel, Wolfgang Schlichting, and Anna Toncheva. 2008. The Diverse and Exploding Digital Universe: An Updated Forecast of Worldwide Information Growth Through 2011. (2008). http://mac3.org/t/the-diverse-and-exploding-digital-universe-e8482-pdf.pdf An IDC White Paper -- sponsored by EMC Univers.
[10]
Robert J. Halstead, Bharat Sukhwani, Hong Min, Mathew Thoennes, Parijat Dube, Sameh Asaad, and Balakrishna Iyer. 2013. Accelerating join operation for relational databases with FPGAs. In IEEE 21st Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM’13). IEEE, 17--20.
[11]
IBM. 2014. IBM Netezza Data Warehouse Appliances. http://www-01.ibm.com/software/data/netezza/. (March 2014).
[12]
William H. Inmon. 2002. Building the Data Warehouse. J. Wiley.
[13]
Dirk Koch and Jim Torresen. 2011. FPGASort: A high performance sorting architecture exploiting run-time reconfiguration on FPGAs for large problem sorting. In Proceedings of the 19th ACM/SIGDA International Symposium on Field Programmable Gate Arrays. ACM, 45--54.
[14]
Jonathan G. Koomey. 2008. Worldwide electricity used in data centers. Environmental Research Letters 3, 3 (2008), 034008.
[15]
Peter A. Milder, James C. Hoe, and Markus Püschel. 2009. Automatic generation of streaming datapaths for arbitrary fixed permutations. In Proceedings of the Conference on Design, Automation and Test in Europe (DATE’09). European Design and Automation Association, 1118--1123. http://dl.acm.org/citation.cfm?id=1874620.1874891
[16]
Mark P. Mills. 2013. The Cloud Begins With Coal -- Big Data, Big Networks, Big Infrastructure, and Big Power. (2013). http://www.tech-pundit.com/wp-content/uploads/2013/07/Cloud_Begins_With_Coal.pdf.
[17]
Rene Mueller, Jens Teubner, and Gustavo Alonso. 2010. Glacier: A query-to-hardware compiler. In Proceedings of the 2010 International Conference on Management of Data (SIGMOD’10). ACM, New York, NY, 1159--1162.
[18]
SQL 2008. Information Technology Database Languages SQL Part 1: Framework (SQL/Framework). ANSI/ISO/IEC 9075-1:2008. (2008).
[19]
Mike Stonebraker, Daniel J. Abadi, Adam Batkin, Xuedong Chen, Mitch Cherniack, Miguel Ferreira, Edmond Lau, Amerson Lin, Sam Madden, Elizabeth O’Neil, Pat O'Neil, Alex Rasin, Nga Tran, and Stan Zdonik. 2005. C-store: A column-oriented DBMS. In Proceedings of the 31st International Conference on Very Large Data Bases. VLDB Endowment, 553--564.
[20]
Bharat Sukhwani, Mathew Thoennes, Hong Min, Parijat Dube, Bernard Brezzo, Sameh Asaad, and Donna Dillenberger. 2015. A hardware/software approach for database query acceleration with FPGAs. International Journal of Parallel Programming 43, 6 (2015), 1129--1159.
[21]
Takashi Takenaka, Masamichi Takagi, and Hiroaki Inoue. 2012. A scalable complex event processing framework for combination of SQL-based continuous queries and C/C++ functions. In 22nd International Conference on Field Programmable Logic and Applications (FPL’12). 237--242.
[22]
Jens Teubner, Louis Woods, and Chongling Nie. 2013. XLynx -- An FPGA-based XML filter for hybrid XQuery processing. ACM Transactions on Database Systems 38, 4, Article 23 (Dec. 2013), 39 pages.
[23]
Stefan Werner, Sven Groppe, Volker Linnemann, and Thilo Pionteck. 2013. Hardware-accelerated join processing in large semantic web databases with FPGAs. In International Conference on High Performance Computing and Simulation (HPCS’13). IEEE, 131--138.
[24]
Louis Woods, Gustavo Alonso, and Jens Teubner. 2013. Parallel computation of skyline queries. In IEEE 21st Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM’13). IEEE, 1--8.
[25]
Louis Woods, Zsolt István, and Gustavo Alonso. 2014. Ibex -- An intelligent storage engine with support for advanced SQL off-loading. PVLDB 7, 11 (2014), 963--974. Proceedings of the 40th International Conference on VLDB (Hangzhou, China, Sept. 1-5).
[26]
Xilinx. 2011. UG743: Overview of the Partial Reconfiguration Flow. Technical Report. Xilinx.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Reconfigurable Technology and Systems
ACM Transactions on Reconfigurable Technology and Systems  Volume 9, Issue 4
Regular Papers and Special Section on Field Programmable Gate Arrays (FPGA) 2015
September 2016
161 pages
ISSN:1936-7406
EISSN:1936-7414
DOI:10.1145/2984740
  • Editor:
  • Steve Wilton
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 22 August 2016
Accepted: 01 November 2015
Revised: 01 September 2015
Received: 01 May 2015
Published in TRETS Volume 9, Issue 4

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. FPGA
  2. SQL processing
  3. dynamic partial reconfiguration
  4. reconfigurable computing

Qualifiers

  • Research-article
  • Research
  • Refereed

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)38
  • Downloads (Last 6 weeks)1
Reflects downloads up to 16 Oct 2024

Other Metrics

Citations

Cited By

View all

View Options

Get Access

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media