Use multiple measurements (one per value)?

Hi,

I am currently storing statistic values from my heating system in an influx 1.8 db. I am using one measurement only with many fields (one per statistic coming from the heating system like many different temperatures etc.). All is working well including Grafana but it lacks optimization. The values do not all come at the same time but basically only when something changes. This leads to one measurement with approximately 30 fields, one line only containing a value for one of the 30 fields.

I assume it would be better to give each of the different temperatures its own influx measurement, correct? I am planning to do this with a node red flow using the influx batch output node. This would translate incoming datagrams like

Kesseltemperature: 59.9 to

Measurement name: Kesseltemperature / Field name: Value / Value: 59.9

So I do not have to worry about tons of translations but have the node red function do this for me automatically. Is this the recommended way with such sporadic statistic data?

Hello @j.koopmann,
Generally it is not better to give each different temperature value its own measurement.
However if you’re gathering temperature values at very different intervals then yes it could makes sense to put them into diff measurements.
I’m not sure I fully understand the issue with grafana “when something changes”

In general however 1.x isn’t great at dealing with sporadic data because you have to query with a time range always. So you don’t know how far back you need to make your time range to actually return all of your data.
This is solved in 3.x but v3 is only available in cloud versions atm. You can query for your data without specifying a time range. You also dont have to worry about cardinality concerns. OSS is coming soon.

Thanks for helping me!

Most of the values (mostly temperature measurements) are coming at very different intervals. Some once per minute, some very irregularly with many minutes in between.

“something changes” → When the system in the backend (heating system) detects a change in temperature it sends a new datagram. There is no “send once per x settings” opportunity in that system.