Artigo Visão: Processamento de Banco de Dados em Memória
Resumo
Neste artigo, apresentamos nossa visão de como os Sistemas Gerenciadores de Bancos de Dados (SGBD) podem integrar Processamento-em- Memória (PIM) em processamento de consultas. PIM promete mitigar os problemas clássicos de “memory-wall” e “energy-wall” presentes nas arquiteturas de computadores que são amplificados pela movimentação de dados na hierarquia de memória por aplicações de análise de dados. Compartilhamos com a comunidade uma análise empírica dos prós e contras do uso de PIM em três principais operadores da álgebra relacional: seleção, projeção e junção. Com base nos resultados obtidos começamos a desenvolver um escalonador de consultas PIM-consciente que apresenta resultados promissores chegando a reduzir em 3x o tempo de execução de consultas e o consumo de energia em pelo menos 25%. Concluímos nossa visão com uma discussão sobre os desafios e oportunidades para impulsionar pesquisas na concepção de um SGBD com PIM.
Referências
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