Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3465998.3466006acmconferencesArticle/Chapter ViewAbstractPublication PagesmodConference Proceedingsconference-collections
research-article

Resource-Efficient Database Query Processing on FPGAs

Published: 20 June 2021 Publication History

Abstract

FPGA technology has introduced new ways to accelerate database query processing, that often result in higher performance and energy efficiency. This is thanks to the unique architecture of FPGAs using reconfigurable resources to behave like an application-specific integrated circuit upon programming. The limited amount of these resources restricts the number and type of modules that an FPGA can simultaneously support. In this paper, we propose "morphing sort-merge": a set of run-time configurable FPGA modules that achieves resource efficiency by reusing the FPGA's resources to support different pipeline-breaking database operators, namely sort, aggregation, and equi-join. The proposed modules use dynamic optimization mechanisms that adapt the implementation to the distribution of data at run-time, thus resulting in higher performance. Our benchmarks show that morphing sort-merge reaches an average speedup of 5x compared to MonetDB.

References

[1]
2002. Data Reduction by Partial Preaggregation. In Proceedings of the 18th International Conference on Data Engineering (ICDE '02). 706.
[2]
Ildar Absalyamov, Prerna Budhkar, Skyler Windh, Robert J Halstead, Walid A Najjar, and Vassilis J Tsotras. 2016. FPGA-accelerated group-by aggregation using synchronizing caches. In Proceedings of the 12th International Workshop on Data Management on New Hardware. 1--9.
[3]
Inc.Amazon.com. 2017. Amazon EC2 F1 Instances, Customizable FPGAs for Hardware Acceleration Are Now Generally Available. https://aws.amazon.com/about-aws/whats-new/2017/04/amazon-ec2-f1-instances-customizable-fpgas-for-hardware-acceleration-are-now-generally-available/. (Accessed on 01/25/2021).
[4]
Jonathan Bachrach, Huy Vo, Brian Richards, Yunsup Lee, Andrew Waterman, Rimas Avižienis, John Wawrzynek, and Krste Asanović. 2012. Chisel: constructing hardware in a Scala embedded language. In DAC Design Automation Conference 2012. IEEE, 1212--1221.
[5]
Cagri Balkesen, Gustavo Alonso, Jens Teubner, and M Tamer Özsu. 2013. Multicore, main-memory joins: Sort vs. hash revisited. Proceedings of the VLDB Endowment 7, 1 (2013), 85--96.
[6]
Kenneth E Batcher. 1968. Sorting networks and their applications. In Proceedings of the April 30-May 2, 1968, Spring Joint Computer Conference. 307--314.
[7]
Spyros Blanas, Yinan Li, and Jignesh M Patel. 2011. Design and evaluation of main memory hash join algorithms for multi-core CPUs. In Proceedings of the 2011 ACM SIGMOD International Conference on Management of data. 37--48.
[8]
Peter A. Boncz, Stefan Manegold, and Martin L. Kersten. 1999. Database Architecture Optimized for the New Bottleneck: Memory Access. In Proceedings of the 25th International Conference on Very Large Data Bases. 54--65.
[9]
Jared Casper and Kunle Olukotun. 2014. Hardware acceleration of database operations. ACM/SIGDA International Symposium on Field Programmable Gate Arrays - FPGA, 151--160. https://doi.org/10.1145/2554688.2554787
[10]
John Cieslewicz and Kenneth A. Ross. 2007. Adaptive Aggregation on Chip Multiprocessors. In Proceedings of the 33rd International Conference on Very Large Data Bases. 339--350.
[11]
Intel Corporation. 2017. Fitter Resource Usage Summary Report. https://www.intel.com/content/www/us/en/programmable/quartushelp/17.0/mapIdTopics/mwh1465496451103.htm. (Accessed on 05/11/2021).
[12]
Intel Corporation. 2019. Intel FPGA Programmable Acceleration Card D5005 Data Sheet. https://www.intel.com/content/www/us/en/programmable/documentation/cvl1520030638800.html. (Accessed on 01/25/2021).
[13]
C. Dennl, D. Ziener, and J. Teich. 2012. On-the-fly Composition of FPGA-Based SQL Query Accelerators Using a Partially Reconfigurable Module Library. In 2012 IEEE 20th International Symposium on Field-Programmable Custom Computing Machines. 45--52.
[14]
Jian Fang, Yvo TB Mulder, Jan Hidders, Jinho Lee, and H Peter Hofstee. 2020. In-memory database acceleration on FPGAs: a survey. The VLDB Journal 29, 1 (2020), 33--59.
[15]
H. Garcia-Molina, J.D. Ullman, and J. Widom. 2011. Database Systems: The Complete Book. Pearson Education.
[16]
Robert J. Halstead, Ildar Absalyamov, Walid A. Najjar, and Vassilis J. Tsotras. 2015. FPGA-based Multithreading for In-Memory Hash Joins. In CIDR.
[17]
R. J. Halstead, B. Sukhwani, H. Min, M. Thoennes, P. Dube, S. Asaad, and B. Iyer. 2013. Accelerating Join Operation for Relational Databases with FPGAs. In 2013 IEEE 21st Annual International Symposium on Field-Programmable Custom Computing Machines. 17--20.
[18]
Ltd. Huawei Technologies Co. 2021. FPGA Accelerated Cloud Server-HUAWEI CLOUD. https://www.huaweicloud.com/en-us/product/fcs.html. (Accessed on 01/25/2021).
[19]
Christoforos Kachris and Dimitrios Soudris. 2016. A survey on reconfigurable accelerators for cloud computing. In 26th International Conference on Field Programmable Logic and Applications (FPL). IEEE, 1--10.
[20]
S.S. Limaye. 2008. VHDL: A Design Oriented Approach. McGraw-Hill Publ.
[21]
Lance Brown Manish Deo, Jeffrey Schulz. 2019. Intel® Stratix® 10 MX Devices with Samsung* HBM2 Solve the Memory Bandwidth Challenge. https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/wp/wp-01264-stratix10mx-devices-solve-memory-bandwidth-challenge.pdf. (Accessed on 01/25/2021).
[22]
Noor Mohammedali and Michael Opoku Agyeman. 2018. A study of reconfigurable accelerators for cloud computing. In Proceedings of the 2nd International Symposium on Computer Science and Intelligent Control. 1--5.
[23]
MonetDB. 2010. MonetDB Internals. https://www.monetdb.com/book/export/html/184. (Accessed on 03/23/2021).
[24]
Rajeev Motwani and Prabhakar Raghavan. 1995. Randomized Algorithms. Cambridge University Press.
[25]
Ingo Müller, Peter Sanders, Arnaud Lacurie, Wolfgang Lehner, and Franz Färber. 2015. Cache-efficient aggregation: Hashing is sorting. In Proceedings of the 2015 ACM SIGMOD International Conference on Management of Data. 1123--1136.
[26]
Jian Ouyang. 2016. SDA: Software-defined accelerator for large-scale deep learning system. In 2016 International Symposium on VLSI Design, Automation and Test (VLSI-DAT). 1--1. https://doi.org/10.1109/VLSI-DAT.2016.7482563
[27]
Johns Paul, Bingsheng He, and Chiew Tong Lau. 2018. Query Processing on OpenCL-Based FPGAs: Challenges and Opportunities. In 2018 IEEE 24th International Conference on Parallel and Distributed Systems (ICPADS). IEEE, 937--945.
[28]
Andrew Putnam, Adrian M Caulfield, Eric S Chung, Derek Chiou, Kypros Constantinides, John Demme, Hadi Esmaeilzadeh, Jeremy Fowers, Gopi Prashanth Gopal, Jan Gray, et al. 2014. A reconfigurable fabric for accelerating large-scale datacenter services. In 2014 ACM/IEEE 41st International Symposium on Computer Architecture (ISCA). IEEE, 13--24.
[29]
Nicole Schweikardt. 2009. One-Pass Algorithm. In Encyclopedia of Database Systems, Ling Liu and M. Tamer (eds) Özsu (Eds.). Springer, Boston, MA, 1948--1949. https://doi.org/10.1007/978-0-387-39940-9_253
[30]
David Sidler, Zsolt István, Muhsen Owaida, and Gustavo Alonso. 2017. Accelerating Pattern Matching Queries in Hybrid CPU-FPGA Architectures. In Proceedings of the 2017 ACM International Conference on Management of Data. 403--415.
[31]
Rym Skhiri, Virginie Fresse, Jean Jamont, Benoit Suffran, and Jihene Malek. 2019. From FPGA to Support Cloud to Cloud of FPGA: State of the Art. International Journal of Reconfigurable Computing 2019 (12 2019), 1--17. https://doi.org/10.1155/2019/8085461
[32]
B. Sukhwani, M. Thoennes, H. Min, P. Dube, B. Brezzo, S. Asaad, and D. Dillenberger. 2013. Large Payload Streaming Database Sort and Projection on FPGAs. In 2013 25th International Symposium on Computer Architecture and High Performance Computing. 25--32.
[33]
MonetDB Team. 2021. https://www.monetdb.org/. (Accessed on 01/29/2021).
[34]
Jens Teubner, Louis Woods, and Chongling Nie. 2012. Skeleton Automata for FPGAs: Reconfiguring without Reconstructing. In Proceedings of the 2012 ACM SIGMOD International Conference on Management of Data. 229--240.
[35]
Stephen M. Steve Trimberger. 2015. Three Ages of FPGAs: A Retrospective on the First Thirty Years of FPGA Technology. Proc. IEEE 103, 3 (2015), 318--331.
[36]
Takanori Ueda, Megumi Ito, and Moriyoshi Ohara. 2015. A dynamically reconfigurable equi-joiner on FPGA. IBM Tehnical Report RT0969 (2015).
[37]
Kizheppatt Vipin and Suhaib A Fahmy. 2018. FPGA dynamic and partial reconfiguration: A survey of architectures, methods, and applications. ACM Computing Surveys (CSUR) 51, 4 (2018), 1--39.
[38]
Zeke Wang, Johns Paul, Hui Yan Cheah, Bingsheng He, and Wei Zhang. 2016. Relational query processing on OpenCL-based FPGAs. In 26th International Conference on Field Programmable Logic and Applications (FPL). IEEE, 1--10.
[39]
S. Watanabe, K. Fujimoto, Y. Saeki, Y. Fujikawa, and H. Yoshino. 2019. Column-Oriented Database Acceleration Using FPGAs. In 2019 IEEE 35th International Conference on Data Engineering (ICDE). 686--697.
[40]
Louis Woods, Zsolt István, and Gustavo Alonso. 2014. Ibex: An Intelligent Storage Engine with Support for Advanced SQL Offloading. Proc. VLDB Endow. 7, 11 (2014), 963--974.

Cited By

View all
  • (2024)FPGA Based Database Sort-Aggregation Query Acceleration Architecture2024 9th International Symposium on Computer and Information Processing Technology (ISCIPT)10.1109/ISCIPT61983.2024.10672642(204-208)Online publication date: 24-May-2024
  • (2024)Energy consumption estimation and profiling for queries in distributed database systems based on a bottom-up comprehensive energy modelFuture Generation Computer Systems10.1016/j.future.2024.04.059159:C(379-394)Online publication date: 1-Oct-2024
  • (2023)Quantum-Inspired Digital Annealing for Join OrderingProceedings of the VLDB Endowment10.14778/3632093.363211217:3(511-524)Online publication date: 1-Nov-2023
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
DAMON '21: Proceedings of the 17th International Workshop on Data Management on New Hardware
June 2021
104 pages
ISBN:9781450385565
DOI:10.1145/3465998
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 ACM 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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 20 June 2021

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Chisel
  2. FPGA
  3. OPAE
  4. aggregation
  5. join
  6. morphing sort-merge
  7. query processing
  8. sorting
  9. treap

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

SIGMOD/PODS '21
Sponsor:

Acceptance Rates

DAMON '21 Paper Acceptance Rate 15 of 17 submissions, 88%;
Overall Acceptance Rate 94 of 127 submissions, 74%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)55
  • Downloads (Last 6 weeks)6
Reflects downloads up to 11 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)FPGA Based Database Sort-Aggregation Query Acceleration Architecture2024 9th International Symposium on Computer and Information Processing Technology (ISCIPT)10.1109/ISCIPT61983.2024.10672642(204-208)Online publication date: 24-May-2024
  • (2024)Energy consumption estimation and profiling for queries in distributed database systems based on a bottom-up comprehensive energy modelFuture Generation Computer Systems10.1016/j.future.2024.04.059159:C(379-394)Online publication date: 1-Oct-2024
  • (2023)Quantum-Inspired Digital Annealing for Join OrderingProceedings of the VLDB Endowment10.14778/3632093.363211217:3(511-524)Online publication date: 1-Nov-2023
  • (2023)Acceleration and Implementation of Database Aggregation Query Based on FPGA2023 China Automation Congress (CAC)10.1109/CAC59555.2023.10452115(817-822)Online publication date: 17-Nov-2023
  • (2022)Hardware acceleration of compression and encryption in SAP HANAProceedings of the VLDB Endowment10.14778/3554821.355482215:12(3277-3291)Online publication date: 1-Aug-2022
  • (2022)Energy-Efficient Database Systems: A Systematic SurveyACM Computing Surveys10.1145/353822555:6(1-53)Online publication date: 7-Dec-2022
  • (2022)FPGA-Based Database Query Processing on Arbitrarily Wide Tables2022 IEEE 30th Annual International Symposium on Field-Programmable Custom Computing Machines (FCCM)10.1109/FCCM53951.2022.9786091(1-1)Online publication date: 15-May-2022
  • (2022)FPGA sharing in the cloud: a comprehensive analysisFrontiers of Computer Science10.1007/s11704-022-2127-017:5Online publication date: 24-Dec-2022

View Options

Login options

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