Blog

Introducing Scalingo InfluxDB addon

Chargement...

5 min read

Introducing Scalingo InfluxDB addon

Our mission here at Scalingo is to help developers not to worry about anything infrastructure-related. That includes developers working with time series databases (TSDB). That’s why we’re introducing today the new Scalingo InfluxDB addon offering you an InfluxDB as a Service integrated into Scalingo!

Our mission here at Scalingo is to help developers not to worry about anything infrastructure-related. That includes developers working with time series databases (TSDB). That's why we're introducing today the new Scalingo InfluxDB addon offering you an InfluxDB as a Service integrated into Scalingo!

What are developers doing with time series database?

First, the definition from Wikipedia:

A time series database (TSDB) is a software system that is optimised for handling time series data, arrays of numbers indexed by time (a datetime or a datetime range).

Developers working in the following 3 fields are certainly using a TSDB:

  • Custom DevOps Monitoring

  • Real-Time Analytics

  • IoT and Sensor Data





Example of usage of time series data storage in agriculture


Example of usage of time series data storage in agriculture


Basically, if you need to store any information over time, you might consider using a TSDB instead of a classic relational database. As you may remember, the metrics view on your Scalingo dashboard displays time series data and, in fact, the behind the scene micro-service is using the Scalingo InfluxDB addon.

What is InfluxDB?

InfluxDB is an open source time series database written in Go with no external dependencies. Its main features are:

  • Built-in HTTP API so you don't have to write any server side code to get up and running.

  • Data can be tagged, allowing very flexible querying.

  • SQL-like query language.

  • Simple to install and manage, and fast to get data in and out.

  • It aims to answer queries in real-time. That means every data point is indexed as it comes in and is immediately available in queries that should return in < 100ms.

In InfluxDB, an information is a combination of a timestamp, a measurement (e.g. cpu_load, temperature) and a field like the measured value itself. You can associate metadata (tags like dc=paris, host=server01) to this information.

As stated in the InfluxDB documentation:

Conceptually you can think of a measurement as an SQL table, where the primary index is always time. tags and fields are effectively columns in the table. tags are indexed, and fields are not. The difference is that, with InfluxDB, you can have millions of measurements, you don't have to define schemas up-front, and null values aren't stored.

Install InfluxDB on Scalingo

To install InfluxDB on Scalingo, just go to your dashboard, under the Addons tab of an application.

Select the InfluxDB addon and choose your plan:



Install Scalingo InfluxDB



Choose your plan:



Choose your plan



Remember that we handle daily backups for any paying plan.

You can now open an interactive remote console to query your data:

$ scalingo -a my-app influxdb-console
-----> Connecting to container [one-off-1486]...
-----> Process 'influxdb-console my-app-1839' is starting...

---> Download and extract the database CLI
---> Database CLI installed:
InfluxDB shell version: 1.2.0
Connected to http://my-app-1839.influxdb.dbs.appsdeck.eu:31065 version 1.1.1
InfluxDB shell version: 1.2.0
> SELECT sum(value) FROM tweets WHERE hashtag = 'RT' AND time >= now() - 1h GROUP BY time(1m) fill(none) ORDER BY time DESC LIMIT 5
name: tweets
time                sum
----                ---
1486464840000000000 95
1486464780000000000 533
1486464720000000000 525
1486464660000000000 479
1486464600000000000 548
$ scalingo -a my-app influxdb-console
-----> Connecting to container [one-off-1486]...
-----> Process 'influxdb-console my-app-1839' is starting...

---> Download and extract the database CLI
---> Database CLI installed:
InfluxDB shell version: 1.2.0
Connected to http://my-app-1839.influxdb.dbs.appsdeck.eu:31065 version 1.1.1
InfluxDB shell version: 1.2.0
> SELECT sum(value) FROM tweets WHERE hashtag = 'RT' AND time >= now() - 1h GROUP BY time(1m) fill(none) ORDER BY time DESC LIMIT 5
name: tweets
time                sum
----                ---
1486464840000000000 95
1486464780000000000 533
1486464720000000000 525
1486464660000000000 479
1486464600000000000 548
$ scalingo -a my-app influxdb-console
-----> Connecting to container [one-off-1486]...
-----> Process 'influxdb-console my-app-1839' is starting...

---> Download and extract the database CLI
---> Database CLI installed:
InfluxDB shell version: 1.2.0
Connected to http://my-app-1839.influxdb.dbs.appsdeck.eu:31065 version 1.1.1
InfluxDB shell version: 1.2.0
> SELECT sum(value) FROM tweets WHERE hashtag = 'RT' AND time >= now() - 1h GROUP BY time(1m) fill(none) ORDER BY time DESC LIMIT 5
name: tweets
time                sum
----                ---
1486464840000000000 95
1486464780000000000 533
1486464720000000000 525
1486464660000000000 479
1486464600000000000 548
$ scalingo -a my-app influxdb-console
-----> Connecting to container [one-off-1486]...
-----> Process 'influxdb-console my-app-1839' is starting...

---> Download and extract the database CLI
---> Database CLI installed:
InfluxDB shell version: 1.2.0
Connected to http://my-app-1839.influxdb.dbs.appsdeck.eu:31065 version 1.1.1
InfluxDB shell version: 1.2.0
> SELECT sum(value) FROM tweets WHERE hashtag = 'RT' AND time >= now() - 1h GROUP BY time(1m) fill(none) ORDER BY time DESC LIMIT 5
name: tweets
time                sum
----                ---
1486464840000000000 95
1486464780000000000 533
1486464720000000000 525
1486464660000000000 479
1486464600000000000 548

Conclusion

The world of time series database is now at a single click range! You can now list plans and read the technical documentation of this addon.

Yann Klis

Yann Klis co-founded Scalingo. Scalingo's vision is to offer a european sovereign cloud housting platform for developers. Today Scalingo hosts thousands of web applications from customers located all over the world. Before that Yann founded Novelys a web studio specialised in Ruby on Rails technology.

Stay Updated

Get articles and platform updates in your inbox.

Ready to Deploy with Confidence?

Experience zero-downtime deployments, intelligent auto-scaling, and fully managed infrastructure. Start deploying your applications on Scalingo today.

No credit card required • Deploy in minutes • Cancel anytime

Deploy your first app or database

Let's start building together

Join developers who chose a platform built for fast delivery and calm production, with European values and human support.

Deploy your first app or database

Let's start building together

Join developers who chose a platform built for fast delivery and calm production, with European values and human support.

Deploy your first app or database

Let's start building together

Join developers who chose a platform built for fast delivery and calm production, with European values and human support.