influxdb & grafana
TRANSCRIPT
InfluxDB & Grafana@ OC Tanner
by Pedro Salgado
1-slide intro to InfluxDB• “InfluxDB is a time series, metrics, and analytics database.
• It’s written in Go and has no external dependencies.
• That means once you install it there’s nothing else to manage (such as Redis, ZooKeeper, Cassandra, HBase, or anything else).
• InfluxDB is targeted at use cases for DevOps, metrics, sensor data, and real-time analytics.
• It arose from our need for a database like this on more than a few previous products we’ve built.”
• source: influxdb.com
– Mark Twain
“Get your facts first,
then you can distort them as you please.”
Time-series• “A time series is a sequence of data points, typically
consisting of successive measurements made over a time interval.
• Examples of time series are ocean tides, counts of sunspots, and the daily closing value of the Dow Jones Industrial Average.
• Time series are very frequently plotted via line charts.”
• source: wikipedia
Data point
• “In statistics, a data point or observation is a set of one or more measurements on a single member of a statistical population.“
• source: wikipedia
Measurement
• “Measurement is the assignment of a number to a characteristic of an object or event, which can be compared with other objects or events.
• The scope and application of a measurement is dependent on the context and discipline.
• source: wikipedia
Example in InfluxDB terms• time series
• internal and external temperature for machine X type Y in time interval
• measurement : temperature
• tag set : machine, type
• field set : internal_temperature, external_temperature
• temperature,machine=unit42,type=assembly internal=32,external=100 1434055562000000035
• filtering done on tags
• computation / analysis done on fields
• fields aren’t indexed
• data written using line protocol
• [key] [point] [timestamp]
• key = <measurement>,<tag set>
• temperature,machine=unit42,type=assembly
• point = <field set>
• internal=32,external=100
• timestamp
• 1434055562000000035
• there can only be one point for a series and timestamp
• you define precision of point (s, ms, μs, ns)
• you define how long data is kept : retention policy (replication, duration)
Other interesting features
• continuous queries
• clustering (alpha)
Grafana
• “An open source, feature rich metrics dashboard and graph editor for Graphite, InfluxDB & OpenTSDB”
• source: grafana.org
“A picture is worth a thousand words.”
• https://en.wikipedia.org/wiki/Time_series
• https://en.wikipedia.org/wiki/Data_point
• https://en.wikipedia.org/wiki/Measurement
• https://influxdb.com/docs/v0.9/introduction/overview.html
• https://influxdb.com/docs/v0.9/concepts/glossary.html
• http://grafana.org/
• https://github.com/steenzout/
– Dr Seuss
“Don't cry because it's over,
smile because it happened.”