Processamento de consultas de banco de dados com aceleração de rede
O objetivo deste projeto é investigar o co-processamento distribuído de consultas entre o sistema de banco de dados e o hardware de rede. No processamento distribuído de consultas, o movimento de grandes quantidades de dados pela hierarquia de memória pode impactar negativamente o desempenho e o consumo de energia do sistema de banco de dados.
Embora o componente de rede normalmente tenha o menor desempenho na hierarquia de memória, desenvolvimentos recentes de hardware introduziram acesso a dados de baixa latência comparável à memória local. Esses avanços também tornaram possível programar e executar operações complexas de processamento de dados em switches de rede. Por exemplo, programando na linguagem P4.
Quando um pacote é recebido, o pipeline começa parseando o pacote e criando uma máquina de estados. Durante o processamento, os metadados e os dados dos pacotes acionam transições de estado para determinar o encaminhamento do pacote. A lógica de processamento para ingresso e saída de pacotes está localizada nos pipelines MAU (Unidades de Ação de Correspondência), que consistem em lógicas de correspondência e ação. Uma combinação de MAUs constitui o plano de dados da rede usado para transmitir pacotes de usuário e implementar vários protocolos de rede ou, no contexto do processamento de consultas, operações de consulta. O plano de controle é um controlador centralizado baseado em software que coordena como os pacotes devem ser processados, possibilitando assim as funções no plano de dados. Em termos gerais, um programa P4 define os objetos instalados no plano de dados como a máquina de estados, tabelas de roteamento e lógicas de correspondência-ação, e o compilador gera a API que o plano de controle usa para se comunicar com o plano de dados.
A Figura abaixo mostra o pipeline de processamento de pacotes P4.
No entanto, as limitações da linguagem de programação P4 para switches levantam questões de pesquisa difíceis que impulsionam nossa agenda de pesquisa. Entre em contato para aprofundar este tópico.
Nosso projeto é baseado em resultados que publicamos nas mais prestigiosas conferências internacionais na área de banco de dados, como VLDB, ICDE, EDBT, DATE, CIKM e DEXA, bem como workshops de hardware de BD, como: ADMS@VLDB, Damon@SIGMOD, PhD@VLDB e SIGMOD-Research Competition. Os resultados também receberam prêmios de melhor tese de doutorado pela CAPES 2021, tese vice-campeã pela SBC 2021 e ACM SIGMOD 2023. Os resultados esperados deste projeto envolvem algoritmos, metodologias e propostas de extensões de hardware que podem ser implementadas pela indústria de BD e fabricantes de hardware.
Este projeto é apoiado pelo CNPq e pelo projeto SmartEdge.
Links CNPq: https://www.gov.br/cnpq/pt-br
SmartEdge: https://www.smart-edge.eu