InfluxDB

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
InfluxDB
Influxdb logo.svg
Developer(s) InfluxData
Initial release September 24, 2013; 4 years ago (2013-09-24)
Stable release
1.6.1 / August 3, 2018; 45 days ago (2018-08-03)[1]
Written in Go
Operating system Cross-platform
Type Time series database
License MIT
Website influxdata.com

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.[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 US$16,000,000 in September 2016.[5]

Technical overview[edit]

InfluxDB has no external dependencies[6] and provides a 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[edit]

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

References[edit]

  1. ^ "InfluxDB 1.6 release notes". Retrieved 19 August 2018. 
  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. ^ "Update on InfluxDB Clustering, High-Availability and Monetization". GitHub. influxdata. 2016-03-10. Retrieved 2016-08-08. 
  8. ^ "I've advocated for and implemented several InfluxDB installations in production ..." Hacker News. 2016-03-11. Retrieved 2016-08-08.