Skip to content

EsMetrics v1.146.0

Latest

Choose a tag to compare

@github-actions github-actions released this 03 Jul 20:47

First release of EsMetrics — a secure, fast, memory-safe time-series database in Rust by Softalink LLC. A from-scratch implementation of VictoriaMetrics single-node (tracking upstream v1.146.0) that outperforms the Go original on every TSBS benchmark metric, on both Linux and Windows, while answering queries byte-for-byte identically.

Benchmark headlines

TSBS cpu-only, scale 100 (8.64M metrics), 4 workers, medians of 3 paired back-to-back rounds against the official VictoriaMetrics v1.146.0 release binaries. Full methodology and raw data: benchmarks/results.

Ingestion

platform Go v1.146.0 EsMetrics delta
Linux (4 cores) 3.59M metrics/s 5.14M metrics/s +43%
Windows 11 (8 cores, MSVC build) 2.99M metrics/s 4.95M metrics/s +66%

Queries — all 10 TSBS devops types faster

Linux Windows (MSVC)
mean latency vs Go −11% to −59% −52% to −82%
heaviest query (double-groupby-all, mean) 69.0 → 49.7 ms 102.4 → 40.9 ms
lightest query (single-groupby-1-1-1, mean) 0.37 → 0.33 ms 0.45 → 0.20 ms

Correctness

750 TSBS queries replayed against both servers on identical data: byte-identical responses. ~600 tests ported from the upstream Go suites run on Linux and native Windows in CI.

Highlights

  • Drop-in compatible: Influx line protocol ingestion (/write), Prometheus HTTP query API (/api/v1/query_range, query, series, labels, export); flags mirror VictoriaMetrics single-node
  • Memory-safe by construction — no GC pauses, deterministic cleanup, no unsafe shortcuts on data paths
  • Single small static binary: 9 MB Linux, 4 MB Windows (MSVC), no runtime dependencies
  • First-class Windows: benchmarked and tested on physical Windows hardware; version metadata and icon embedded in the executable

Assets

file contents
esmetrics-v1.146.0-linux-amd64.tar.gz Linux x86_64 binary + LICENSE + NOTICE + README
esmetrics-v1.146.0-windows-amd64.zip Windows x86_64 (MSVC) binary + LICENSE + NOTICE + README

SHA-256 checksums ship alongside each archive.

tar xzf esmetrics-v1.146.0-linux-amd64.tar.gz
./esmetrics-v1.146.0-linux-amd64/esmetrics \
    -storageDataPath=/var/lib/esmetrics -retentionPeriod=12 -httpListenAddr=:8428

Versioning & attribution

EsMetrics versions mirror the upstream semver: 1.146.x tracks upstream v1.146.0 (currently synced through metricsql v0.87.2). Apache-2.0; derivative work of VictoriaMetrics (Copyright VictoriaMetrics, Inc.) — see NOTICE.

Developed by Softalink LLC with Claude (Anthropic) as an engineering contributor. Contact: info@softalink.com