Hi,
I was thinking below two queries will have identical results but this is not the case, they differ significantly. Can someone please explain why?
from(bucket: "my-bucket")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "some-measurement")
|> filter(fn: (r) => r["_field"] == "my-field" )
|> aggregateWindow(every: 5s, fn: mean, createEmpty: false)
from(bucket: "my-bucket")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "some-measurement")
|> filter(fn: (r) => r["_field"] == "my-field" )
|> aggregateWindow(every: 1s, fn: mean, createEmpty: false)
|> aggregateWindow(every: 5s, fn: mean, createEmpty: false)
Edit: Rethinking, this can be caused by the number of points in the windows.
i.e. mean(4,10,10) = 8
is different than mean(mean(4), mean(10,10)) = 7
.
But the results are different even for min
, max
aggregate functions.