Available Platformation Victoriametrics 1.94.0 provides a DBMS for storing and processing data in the form of a temporary series optimized for solving monitoring problems. This project competes with solutions such as influxdb, timeescaledb, thanos, cortex, and uber m3, and offers higher performance. The DBMS can be used as a long-term data storage connected to Prometheus and Grafana, or as a transparent replacement for Influxdb. The code is written in Go and is distributed under the Apache 2.0 license.
In VictoriaMetrics performance tests, when performing insertion and data sampling operations, Victoriametrics outperformed Influxdb and Timescaledb by up to 20 times, while consuming 10 times less RAM than Influxdb and 7 times less than Prometheus, Thanos, and Cortex when processing millions of unique temporary rows. The compressed storage format allows for fitting 7 times more records in the same volume of storage compared to Prometheus, Thanos, and Cortex, and 70 times compared to Timescaledb. The DBMS also includes specific optimizations for storage facilities with large delays and low intensity of input/output operations, such as hard drives and cloud storages AWS, Google Cloud, and Microsoft Azure.
The DBMS is designed as a single executable file with minimal settings that can be specified through the command line when starting. All data is stored in a single directory specified with the “-storageedatapath” flag. The DBMS uses the metricsql language, an extended version of the Promql language used in the Prometheus monitoring system. Additionally, Victoriametrics supports the processing of historical data