InfluxDB

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
InfluxDB
Influxdb logo.svg
Developer(s)InfluxData
Initial releaseSeptember 24, 2013; 5 years ago (2013-09-24)
Stable release
1.7.5 / March 26, 2019; 23 days ago (2019-03-26)[1]
Repositoryhttps://github.com/influxdata/influxdb
Written inGo
Operating systemCross-platform
TypeTime series database
LicenseMIT
Websiteinfluxdata.com

InfluxDB is an open-source time series database (TSDB) 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.[2]

History[edit]

Y Combinator-backed Errplane[3] 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.[4] In late 2015, Errplane officially changed its name to InfluxData Inc. InfluxData raised Series B round of funding of $16M in September 2016.[5] In Feb. 2018, InfluxData closed a $35 million Series C round of funding led by Sapphire Ventures, which funds category-leading growth technology companies.

InfluxData is a dominant player in this category and is the only stack purpose-built to handle time-series data. As per an independent 3rd party DB-Engines, InfluxDB is the fastest growing time series database and tops its list for time-series DBMS.

Technical overview[edit]

InfluxDB has no external dependencies[6] and provides a SQL-like language, listening on port 8086,[7] with built-in 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.

In November 2018, InfluxData announced the availability of technical preview of its Flux language. Flux is a functional language for both querying and processing the data. It is a one of a kind language which allows users to contribute to enhance the language.

Line protocol[edit]

InfluxDB accepts data via HTTP, TCP, and UDP. It defines a line protocol backwards compatible with Graphite 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[edit]

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.[8] Community reaction was mixed, with some feeling the move was a "bait and switch".[9]

References[edit]

  1. ^ "InfluxDB 1.7 release notes". Retrieved 2 April 2019.
  2. ^ James Turnbull (1 December 2014). The Art of Monitoring. James Turnbull. pp. 206–. ISBN 978-0-9888202-4-1.
  3. ^ Lardinois, Frederic. "Y Combinator-Backed Errplane Launches Comprehensive Performance Monitoring And Alert Service For Web Apps". TechCrunch. Retrieved 2016-09-07.
  4. ^ Miller, Ron. "Errplane Snags $8.1M To Continue Building Open Source InfluxDB Time Series Database". TechCrunch. Retrieved 2016-09-07.
  5. ^ Mannes, John. "InfluxData closes $16 million Series B led by Battery Ventures to organize IOT data". TechCrunch. Retrieved 2016-10-13.
  6. ^ Michael Duffy (26 November 2015). DevOps Automation Cookbook. Packt Publishing. pp. 176–. ISBN 978-1-78439-839-2.
  7. ^ https://docs.influxdata.com/influxdb/v1.7/administration/ports/
  8. ^ "Update on InfluxDB Clustering, High-Availability and Monetization". GitHub. influxdata. 2016-03-10. Retrieved 2016-08-08.
  9. ^ "I've advocated for and implemented several InfluxDB installations in production ..." Hacker News. 2016-03-11. Retrieved 2016-08-08.