Skip to content
Latchkey

Grafana Loki vs Elasticsearch: qual armazenamento de logs?

O Loki indexa apenas labels e armazena chunks de log comprimidos de forma barata; o Elasticsearch indexa totalmente o conteúdo dos logs para busca full-text rica.

O Grafana Loki mantém custos baixos ao indexar apenas um pequeno conjunto de labels e armazenar o resto como chunks comprimidos em object storage, o que torna a ingestão barata mas a busca ad hoc por conteúdo mais lenta. O Elasticsearch indexa cada campo, permitindo consultas full-text rápidas, agregações e analytics ao custo de armazenamento mais pesado e overhead operacional. O Loki ganha em custo e simplicidade para logs orientados por labels; o Elasticsearch ganha em profundidade de busca e analytics.

LokiElasticsearch
Modelo de índiceApenas labelsConteúdo completo
Custo de armazenamentoBaixo (object store)Mais alto
BuscaLabel + grepFull-text rica
Overhead de opsMais leveMais pesado
Melhor paraLogs baratos e com labelsBusca profunda, analytics

Caso de uso e custo

O Loki se encaixa em times que já rodam Grafana e querem armazenamento de logs barato, com labels no estilo Prometheus, sem gerenciar um cluster de busca. O Elasticsearch se encaixa em times que precisam de consultas full-text arbitrárias, agregações e analytics estruturados sobre campos de alta cardinalidade, e dispostos a pagar o custo de armazenamento e tuning.

Ops e adequação a CI

O Loki é mais leve de operar e escala horizontalmente em object storage; o Elasticsearch precisa de gerenciamento cuidadoso de shard, heap e ciclo de vida de índices. Ambos são distribuídos como containers construídos e testados em integração no CI, onde managed runners mais rápidos encurtam builds de imagem e testes de consulta ponta a ponta contra instâncias efêmeras.

O veredito

Quer logs baratos, indexados por labels e integrados de perto com o Grafana: Loki. Quer busca full-text profunda, agregações e analytics: Elasticsearch. O Loki minimiza custo; o Elasticsearch maximiza poder de consulta.

Guias relacionados