InfluxDB is an open source time series database built by InfluxData. Optimized for the storage and retrieval of time series data, it is used for monitoring and recording performance metrics and analytics. InfluxDB is written Go and has no external dependencies.
InfluxDB was created by Errplane in late 2013. Backed by Y Combinator, Errplane was initially a SaaS company centered on anomaly detection in data. After discovering a huge gap in the market, the company pivoted to focusing on their open source time series database–this eventually became InfluxDB, and Errplane rebranded to become InfluxData Inc.
The HTTP API is the primary way to query data; a variation of SQL called influxql can be used to query as well. A new custom query language called Flux is currently being developed.
InfluxDB supports continuous queries, which are conceptually similar to materialized views in that expensive query results are precomputed and stored.
InfluxDB utilizes TSI (Time Series Index), which is a log-structured merge tree-based database.
Compression strategy varies based on the shape of the data - for instance, with timestamps, run length encoding is used in the best case, [Simple8B](https://godoc.org/github.com/jwilder/encoding/simple8b) used in a good case, and raw value encoding is used for the worst case. [Snappy](https://en.wikipedia.org/wiki/Snappy_(compression)), a dictionary compression scheme, is used for strings.
Commercial, Open Source