Writing and Querying for values at a specific point in time

#1

We’re taking a measurement every ten minutes for 24 hours/day. We want to report on and improve those metrics at certain times. For example, we have benchmarks that the metrics need to be at at 6am.

Getting data into Influx has been easy but now I’m not sure we’re storing it right.

We’ll want the value of our measurement for the past 30 days at the “6am measurement” Whatever that means. 06:00:01? Fine, take that one.

*We can’t really query for time=06:00:00, because we might not have anything.

  • We could query for time>05:59:50 and time<06:00:10 but that feels weird for some reason.
  • We don’t want to downsample, because we want the measurement at that point in time not an aggregate of the previous hour or whatever.
  • My latest idea is to store “hour” and “minute” as tags. Then our query is for the data point with hour=6 and minute=00. Then we query for those tags. This also feels wrong but it feels the least wrong.

Any suggestions? Thanks!

#2

@gmoore Do you have any control over your clients? If so having them set the timestamp at the bound and writing with minute precision should solve this issue.

#3

Oh that’s a good idea. Yes, we have control over the clients pushing data. If we round to the nearest minute, can we query Influx with minute precision?

#4

@gmoore Yup! The points will come back by default with that precision.