GreptimeDB Otimiza Leitura do Prometheus em Até 16x com Reuso de Strings Arrow
Aprofundamento CEVIU
Aprofundamento
A otimização na leitura remota do Prometheus pelo GreptimeDB aborda um gargalo comum em sistemas de observabilidade. Antes, a conversão de dados colunares (Apache Arrow RecordBatches) para o formato orientado a linhas do Prometheus (TimeSeries) gerava um custo computacional desproporcional. O problema estava na materialização de cada valor de rótulo: o sistema anterior criava uma cópia de string para cada rótulo em cada linha, mesmo que fossem os mesmos para uma série temporal inteira. Isso levava a um consumo elevado de CPU e memória, com 36.2% do CPU dedicado a essa conversão e 8.9% para a materialização de dicionários, processando apenas cerca de 2 milhões de linhas por segundo.
A nova abordagem, introduzida na versão GreptimeDB v1.2.0-beta.1, reescreve a função `recordbatches_to_timeseries` no arquivo `src/servers/src/prom_store.rs`. Em vez de copiar e alocar novas strings para cada rótulo, o sistema agora reutiliza diretamente as strings dos arrays Apache Arrow (usando `&str`). Isso é feito através de um `enum LabelValues` que lida com os diferentes layouts do Arrow, como `StringArray` e `DictionaryArray`. A alocação de memória e as cópias de strings acontecem apenas uma vez, quando uma nova série temporal é identificada, e não para cada linha. Um novo método de agrupamento baseado em `HashMap`, com um caminho rápido para séries contíguas, substitui o `BTreeMap`, reduzindo a complexidade computacional para identificar e agrupar séries, resultando em ganhos de performance de 4 a 16 vezes.
O que mudou
A cobertura anterior do CEVIU News, em 16 de fevereiro de 2026, destacou o GreptimeDB como um banco de dados de observabilidade em tempo real e de código aberto, elogiado por sua arquitetura cloud-native e a capacidade de reduzir custos de armazenamento IoT em até 10x. Com essa nova otimização, o que era uma promessa de eficiência para séries temporais agora se concretiza também na integração com um dos sistemas de monitoramento mais usados, o Prometheus.
O GreptimeDB, que já se posicionava como uma solução robusta para armazenamento de dados de observabilidade, agora entrega uma performance significativamente superior na ingestão e consulta de métricas do Prometheus, conforme a versão v1.2.0-beta.1. A mudança move o foco de
Fontes
- greptime.comfonte original
- Categoria
- CEVIU DevOps
- Publicado
- 07 de agosto de 2026
- Editoria
- CEVIU DevOps

