Hasty Briefsbeta

Show HN: Okapi – a metrics engine based on open data formats

4 days ago
  • #object-storage
  • #metrics-engine
  • #observability
  • Okapi is a metrics engine using object storage and Parquet for cost-effective historical data storage.
  • Recent data is stored in-memory for fast queries, with benchmarks showing 283,500 samples/s ingest throughput.
  • Periodic snapshots ensure durability, but in-flight data may be lost in catastrophic failures.
  • Distributed mode exists but hasn't been battle-tested in production.
  • No vendor lock-in; data is accessible via open formats like Parquet.
  • Cheaper storage with S3 ($0.023/GB) compared to EBS ($0.08/GB).
  • Hot and cold-tier partitioning keeps dashboards realtime while retaining historical data.
  • Integration with OLAP tools like IceBerg and Parquet for observability workflows.
  • Quick start via Docker: `docker run --rm -p 9000:9000 ghcr.io/okapi-core/okapi:latest --spring.profiles.active=isolated`.
  • Endpoints include `/api/v1/metrics` for ingestion, `/api/v1/metrics/q` for queries, and `/api/v1/metrics/ready` for health checks.
  • Admission window (`--admissionWindowHrs`) controls how long metrics stay in-memory before being exported to Parquet.
  • Under active development: ingestion, querying, and Parquet export work; distributed sharding and PromQL-style queries planned.