In-Memory Database Processing

  • Tiago R. Kepe UFPR / IFPR
  • Eduardo C. Almeida UFPR
  • Marco A. Z. Alves UFPR

Abstract


In this article, we present our vision of how Database Management Systems (DBMS) can integrate Processing-In-Memory (PIM) into query processing. PIM promises to mitigate the classic memory and energy wall problems present in computing-centric architectures that are amplified by data movement around the memory hierarchy. We share with the community an empirical analysis of the pros and cons of PIM on three major relational algebra operators: selection, projection, and join. Based on the results, we have developed a PIM-aware query scheduler that delivers promising results, reducing by 3x the query execution time and the energy consumption in at least 25%. We conclude our vision with a discussion of the challenges and opportunities to drive research in the co-design of Database-PIM.

Keywords: Processing-in-Memory · Query Scheduler · Energy Efficiency

References

Alves, M. A. Z. and et al. (2016). Large vector extensions inside the HMC. In DATE.

Breß, S., Mohammad, S., and Schallehn, E. (2012). Self-tuning distribution of dboperations on hybrid CPU/GPU platforms. In 24th Grundlagen von Datenbanken.

Do, J., Kee, Y., Patel, J. M., Park, C., Park, K., and DeWitt, D. J. (2013). Query processing on smart ssds: opportunities and challenges. In SIGMOD. DOI: https://doi.org/10.1145/2463676.2465295

Harizopoulos, S. and et al. (2008). OLTP through the looking glass, and what we found there In SIGMOD. DOI: https://doi.org/10.1145/1376616.1376713

HMC-Consortium (2015). Hybrid Memory Cube Specification 2.1. HMC-30G-VSR PHY. DOI: https://doi.org/10.1109/VLSIT.2012.6242474

Jeddeloh, J. and Keeth, B. (2012). Hybrid memory cube new DRAM architecture increases density and performance. In VLSIT.

Karnagel, T., Habich, D., Schlegel, B., and Lehner, W. (2014). Heterogeneity-aware operator placement in column-store DBMS. Datenbank-Spektrum. DOI: https://doi.org/10.1007/s13222-014-0167-9

Kautz, W. H. (1969). Cellular logic-in-memory arrays. IEEE Trans. Computers. DOI: https://doi.org/10.1109/T-C.1969.222754

Keeton, K. and et al. (1998). A case for intelligent disks (idisks). SIGMOD Record. DOI: https://doi.org/

Kepe, T. R. (2018). Dynamic database operator scheduling for processing-in-memory. In PhD@VLDB.

Kim, J. and Kim, Y. (2014). HBM: memory solution for bandwidth-hungry processors. In 26th HCS. DOI: https://doi.org/10.1109/HOTCHIPS.2014.7478812

Mirzadeh, N., Kocberber, O., Falsafi, B., and Grot, B. (2015). Sort vs. hash join revisited for near-memory execution. In ASBD@ISCA.

Patterson, D. A. and et al. (1997). A case for intelligent RAM. IEEE Micro. DOI: https://doi.org/10.1109/40.592312

Tome, D. G. and et al. (2018). HIPE: HMC instruction predication extension applied on database processing. In DATE. DOI: https://doi.org/10.23919/DATE.2018.8342015

Tome, D. G., Kepe, T. R., Alves, M. A. Z., and de Almeida, E. C. (2018). Near-data filters: Taking another brick from the memory wall. In ADMS@VLDB.

Wang, L. and Skadron, K. (2013). Implications of the power wall: Dim cores and reconfigurable logic. IEEE Micro. DOI: https://doi.org/10.1109/MM.2013.74
Published
2019-10-07
KEPE, Tiago R.; ALMEIDA, Eduardo C.; ALVES, Marco A. Z.. In-Memory Database Processing. In: BRAZILIAN SYMPOSIUM ON DATABASES (SBBD), 34. , 2019, Fortaleza. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2019 . p. 157-162. ISSN 2763-8979. DOI: https://doi.org/10.5753/sbbd.2019.8816.