Developer(s) InfluxData Written in Go | Development status Active Operating system | |
Initial release September 24, 2013; 3 years ago (2013-09-24) Stable release v1.1.1 / December 6, 2016; 3 months ago (2016-12-06) |
InfluxDB is an open-source time series database developed by InfluxData. It is written in Go and optimized for fast, high-availability storage and retrieval of time series data in fields such as operations monitoring, application metrics, Internet of Things sensor data, and real-time analytics. It also has support for processing data from Graphite.
Contents
History
Y Combinator-backed Errplane began developing InfluxDB as an open-source project in late 2013 for performance monitoring and alerting. Errplane raised an $8.1M Series A financing led by Mayfield Fund and Trinity Ventures in November 2014. In late 2015, Errplane officially changed its name to InfluxData Inc. Influxdata raised Series B round of funding of US$16,000,000 in September 2016.
Technical Overview
InfluxDB has no external dependencies and provides an SQL-like language with builtin time-centric functions for querying a data structure composed of measurements, series, and points. Each point consists of several key-value pairs called the fieldset and a timestamp. When grouped together by a set of key-value pairs called the tagset, these define a series. Finally, series are grouped together by a string identifier to form a measurement.
Values can be 64-bit integers, 64-bit floating points, strings, and booleans.
Points are indexed by their time and tagset.
Retention policies are defined on a measurement and control how data is downsampled and deleted.
Continuous Queries run periodically, storing results in a target measurement.
Line Protocol
InfluxDB accepts data via HTTP, TCP, and UDP.
It defines a line protocol which is backwards compatible with graphite's and takes the form:
measurement(,tag_key=tag_val)* field_key=field_val(,field_key_n=field_value_n)* (nanoseconds-timestamp)?
Closed Source Clustering Components
In May 2016, InfluxData announced that the horizontally scalable "clustering" component of InfluxDB would be sold as closed-source software in order to create a sustainable source of funding for the project's development. Community reaction was mixed, with some feeling the move was a "bait and switch"