summary:VictoriaMetrics is fast, cost-effective and scalable time-series database.
description:|
*VictoriaMetrics can be used as long-term storage for Prometheus or for vmagent.
See [these docs](#prometheus-setup) for details.
*Supports Prometheus querying API, so it can be used as Prometheus drop-in replacement in Grafana.
VictoriaMetrics implements MetricsQL, https://github.com/VictoriaMetrics/VictoriaMetrics/wiki/MetricsQL query language, which is inspired by PromQL.
*Supports global query view. Multiple Prometheus instances may write data into VictoriaMetrics. Later this data may be used in a single query.
*High performance and good scalability for both inserts and selects.
*High data compression, so up to 70x more data points may be crammed into limited storage comparing to TimescaleDB.
*Optimized for storage with high-latency IO and low IOPS (HDD and network storage in AWS, Google Cloud, Microsoft Azure, etc).
*A single-node VictoriaMetrics may substitute moderately sized clusters built with competing solutions such as Thanos, M3DB, Cortex, InfluxDB or TimescaleDB.
* Easy operation:
*VictoriaMetrics consists of a single without external dependencies.
*All the configuration is done via explicit command-line flags with reasonable defaults.
*All the data is stored in a single directory pointed by `-storageDataPath` flag.
*Easy and fast backups from
to S3 or GCS with [vmbackup] / [vmrestore].
*Storage is protected from corruption on unclean shutdown (i.e. OOM, hardware reset or `kill -9`) thanks to the storage architecture.
* Supports metrics' scraping, ingestion and backfilling via the following protocols:
*[Metrics from Prometheus exporters]
such as node_exporter.
*Prometheus remote write API(
*InfluxDB line protocol over HTTP, TCP and UDP.
*Graphite plaintext protocol
if `-graphiteListenAddr` is set.
*OpenTSDB put message, if `-opentsdbListenAddr` is set.
*HTTP OpenTSDB /api/put requests, if `-opentsdbHTTPListenAddr` is set.
*JSON line format.
*Native binary format.
*Prometheus exposition format.
*Arbitrary CSV data.
*Supports metrics' relabeling. See [these docs](#relabeling) for details.
*Ideally works with big amounts of time series data from Kubernetes, IoT sensors, connected cars, industrial telemetry, financial data and various Enterprise workloads.
*Has open source cluster version (https://github.com/VictoriaMetrics/VictoriaMetrics/tree/cluster).
**Configuration management**
*Prometheus scrape config can be edited with your favorite editor, its located at