HACKER Q&A
📣 jaapz

State of Timeseries Databases in 2024


Our product stores a lot of (sensoric) time series data. We currently store it using InfluxDB. We started about a decade ago, and back then, InfluxDB was the simplest and best option out there. A big plus was their focus on open source.

However, since then InfluxData seems to have shifted their open source focus more and more to enterprise and cloud (v3 that they are currently working on still afaik does not have an open source version).

As we've been having trouble with InfluxDB randomly simply stalling and not accepting any writes or reads, and also taking into account the painful migration to v2, and now probably another painful migration to v3, we are looking around for alternatives.

Since we started, we've grown so now scalability is more important for us as well.

One option we've been looking at is VictoriaMetrics, which seems quite good.

HN, what time series databases should I certainly look at when trying to find an alternative for InfluxDB?


  👤 j1897 Accepted Answer ✓
Directly related to your question:

Both victoria metrics and questdb are compatible (ingestion-wise) with the InfluxDB Line protocol, so migration would be smoother than with other databases. Just point the old ingestion script to the new server URL, and data will start flowing in.

Taking a broader view, the time series database landscape is split into three categories (sorry for adding complexity!):

1. Observability (metrics from your hardware): Prometheus, and other engines that work well with Prometheus such as Victoria Metrics. I think their language is tightly coupled with PromQL. InfluxDB 1.X and 2.X used to be in this camp and were the market-leading solution for observability before Prometheus came along and got incredible adoption. Chronosphere built with m3db is also a big name in this category.

2. General purpose: TimescaleDB is built on top of Postgres, and is now seen increasingly as a super postgres that can also deal with time series data, amongst other things (now focusing on vectors as well).

3. Specialized: kdb+, QuestDB, some OLAP databases that can also do time series (Clickhouse & Druid), and perhaps InfluxDB 3.0 even though it's not OSS yet. Here the focus is on performance, and the data loads tend to be more significant. Industries and use cases often paired with demanding data loads, such as financial services, often require such specialized databases. Some have their prop language (kdb+ with Q), some are closed source (kdb+), and others are OSS & use SQL (questdb, clickhouse, druid). InfluxDB 3.0 also uses SQL (from DataFusion's query engine) but is not OSS yet.


👤 chis
My experience is that generally Clickhouse beats out any of the targeted time series databases on speed, while also having the advantage of supporting full traditional SQL. I think the market just hasn't realized yet because it's still relatively new.

👤 PeterZaitsev
A lot also depends what time series data and how you're going to query it

VictoriaMetrics is awesome. Clickhouse is another popular choice if you need more flexible model and would like SQL


👤 killme2008
Have you heard of GreptimeDB? I am the creator of GreptimeDB. It's open-source and compatible with InfluxDB Line Protocol but only supports SQL as the query language. And it wants to support all types of time-series data, including metrics, logs, and events.

InfluxDB is a great project, but as you said, the v3 migration is painful and is still WIP. About the performance, We already did some benchmark GreptimeDB vs. InfluxDB v2, you can find it in our blog.


👤 lowkey
I don’t have personal experience with it but I think TimeScaleDB is worth investigating. It is a Postgres extension. The founder is an academic and a really nice person who managed to build a really great community.

👤 byteabit
How about Bigtable (for apps) and/or BigQuery (analytics)?