Learning TICK - InfluxDB

TICK?

  • Telegraf is a data collector, it actively collects data points and sends them to …
  • InfluxDB, which is a time series database. In order to see what’s stored there, …
  • Chronograf is a graphing and visualization tool. But to trigger alarms, analyze the time series data, you use …
  • Kapacitor, which is capable of “monitoring” your streams of data, ie your time series.

InfluxDB

The “line protocol” for data points in a InfluxDB series looks like this:

<measurement>,<tag_0>[,<tag_n>] <field=value>[,<field_n=value_n>] [timestamp]

an example:

os_metrics,host=i-823456ac,role=mongodb,type=m3-large cpu-load-1=1.2,cpu-load-5=0.8,cpu-load-5=0.6 1490520338000000
os_metrics,host=i-823456ac,role=mongodb,type=m3-large deb-packages-installed=327i 1490520338000000

Everything’s a string, except

  • timestamp, which is nanoseconds since unix epoch
  • field values, which can be int, float, boolean, or strings.

The measurement is close to a SQL database table: you can easily work on the fields and tags in the same measurement/table, but if you need data from some other measurement you’ll need to join them together.

For quering the data, all tags are indexed, whereas fields are not.

Videos

This work by Fredrik Wendt is licensed under CC by-sa.