Perfect for storing time-series data
Valentin Höbel profile photo
January 25, 2018

Perfect for storing time-series data

Score 10 out of 10
Vetted Review
Verified User
Review Source

Overall Satisfaction with InfluxDB

As a Consultant, I often choose InfluxDB as a time-series database for my customers when they need to store metrics from their monitoring systems.
Since InfluxDB is widely spread, many other software products offer some sort of integration (such as Grafana). Therefore, metrics graphs based on InfluxDB data are often embedded into other software products which are being used by my customers.

This solves the problem that customers often have to get used to different graphical interfaces when viewing common monitoring data and performance metrics. But since graphs (based on InfluxDB data) can get embedded into main GUIs, customers only need to login into one interface and have a complete overview of their data.

InfluxDB itself solves another problem. In the past, many companies used MySQL-like products to store time-series data. This was highly inefficient and difficult to manage. With InfluxDB, many issues those customers had disappeared.

  • Storing time-series data
  • Providing time-series data over an HTTPS API
  • Accepting new data inputs through the same HTTPS API
  • Providing existing data sets in a very fast and efficient manner
  • The open source version does not have ACLs, which is crucial for enterprise customers
  • The open source version has no high availability or clustering option, even the enterprise edition is limited in this way
  • The open source and the enterprise versions both have no read load-balancing systems (sharding is possible, though)
  • Backup and recovery can only be performed for all data sets, not for subsets
InfluxDB scores with its awesome and fast API. Reading and submitting data is really easy since one has only to use the API. No special programming is needed when e.g. implementing InfluxDB in customer or enterprise products. The recovery features, however, are very limited and therefore ineffective. It is not possible to e.g. spawn a new InfluxDB node and let it receive data bit by bit from other nodes, so they can catch up. Instead, one has to import some sort of dump, which might lead to inconsistencies.

  • InfluxDB is a quick and easy solution if the customers need to store and handle large amounts of time-series data
  • InfluxDB is so simple that almost no training is needed
  • InfluxDB had a negative impact in terms of security since the open-source version lacks relevant features; therefore all customers have to build their own security solution on top of InfluxDB if they can't afford the enterprise version
To be honest, I didn't look at alternatives since InfluxDB performs very well if you can oversee the lack of security and HA features. But for all challenges, there is an easy solution which brings you forward (e.g. read load balancing can be achieved by using a common HTTPS load balancer).
InfluxDB simply works. There is no need to switch to another solution if you don't need native clustering, HA or security (and don't want to add those features yourself). I provide a 10-star rating since InfluxDB promotes itself as a simple, but effective time-series database. If you look at what it provides and what was advertised, there is a 100% match, which is why I can't refuse to give a perfect rating. All the small things that are "not so cool" can be overlooked.
InfluxDB is very good at storing monitoring metrics (e.g. performance data). InfluxDB is not the right choice if you need to store other data types (like plain text, data relations etc.).

Using InfluxDB

5 - Various people in my organization and various customers use InfluxDB. Most of them are part of the IT staff.
5 - InfluxDB can be supported with common Linux and database knowledge.
  • Storing metrics
  • Storing performance data
  • Providing the data for beautiful visualizations
  • InfluxDB can be combined with Grafana to generate beautiful graphs
  • InfluxDB in combination with InfluxDB relay can achieve a "poor man's" HA setup
  • InfluxDB can be used together with AI for providing additional value for monitoring environments
  • Since InfluxDB only provides one main feature, there won't be any surprises.