#timestamp #grafana #influxdb
#временная метка #графана #influxdb
Вопрос:
У меня есть временной ряд данных от конкретного датчика, частота дискретизации которого составляет 16 кГц. Поскольку я замечаю, что мои данные во InfluxDB являются нерегулярными (иногда имеют временные рамки 80-500 мс без данных), я ищу правильный способ запрашивать и отображать разницу во времени между каждой отдельной записью измерения. Возможно ли это вообще? Я наткнулся на запрос, похожий на этот
SELECT elapsed('value', 1ms) FROM "measurement" WHERE value > 1
Но в результате я просто получаю все временные метки. Есть ли другая возможность без создания сценария или чего-то подобного, чтобы получить разницу во времени для последовательных записей?
Ответ №1:
Я бы запустил другой запрос, чтобы найти проблемы в данных:
SELECT count(*)
FROM "measurement"
WHERE <time condition>
GROUP BY time(1s)
Я бы ожидал подсчета 16 кб за каждую секунду, если у вас частота дискретизации 16 кГц. Вы можете пойти еще ниже с агрегированием времени, чтобы иметь лучшую детализацию (например, 1 мс)
Комментарии:
1. Что именно вы бы ввели в условие времени? Я имею в виду, что у меня нет фиксированных временных меток, и для них нет дополнительного поля.
2. @FredFloete Абсолютное или относительное время docs.influxdata.com/influxdb/v1.7/query_language /…