Construa um pipeline append-only: agents → Kafka → armazenamento em camadas (quente no ClickHouse/ELK, frio em object storage) com uma política de retenção que indexa dados recentes e arquiva o resto de forma barata. 100M de eventos/dia são ~1.200/seg em média (picos muito maiores) e dezenas a centenas de GB diários — você otimiza para escritas baratas e custo de consulta limitado, não para semântica OLTP.
App/agents ─▶ Kafka ─▶ Consumers ─┬─▶ ClickHouse / ELK (hot: last 7–30d, indexed, fast search)
(Fluent Bit) (buffer, │
replay) └─▶ S3/Parquet (cold: 90d–years, cheap, scan-on-demand)
│
Lifecycle/tiering ─▶ Glacier (archive) ─▶ delete at retention
