Как получить все записи Influxdb временных рядов одним запросом python? - PullRequest
0 голосов
/ 24 января 2020


У меня есть вопрос об использовании Python вместе с InfluxDB. У меня есть несколько Rasperry PI, собирающих данные временных рядов датчиков (таких как температура, влажность и т. Д.) И сохраняющих их в моей InfluxDB. Теперь я хочу использовать другой PI для доступа к этим Influxdata и выполнить некоторые вычисления, например, подобие этих временных рядов. Поскольку количество запросов может время от времени различаться, я хочу динамически запрашивать список всех записей, а затем запрашивать эти данные.

Я сделал это действительно полезное руководство здесь: https://www.influxdata.com/blog/getting-started-python-influxdb/
Там указано, что используется

client.get_list_database()

, чтобы получить список, содержащий все базы данных, которые в моем случае возвращается:

[{'name': 'db1'}, {'name': 'db2'}, {'name': 'sensordata'}]


Теперь моя цель - "go глубже" в базу данных sensordata и получить список всех временных рядов, которые являются общими содержится в этих базах данных, например, RP1-Temperature1, RP2-Brightness1, .. и так далее.

Итак, чтобы прояснить ситуацию, мой магический запрос c будет содержать длину моего запроса и базы данных и вернет мне словарь python, содержащий имена и значения временного ряда.

Заранее спасибо !!

1 Ответ

0 голосов
/ 26 января 2020

Клиент Python позволяет запрашивать базу данных с помощью линейного протокола.

Команда

SHOW series

выдаст все серии, содержащиеся в базе данных.

Что делать с результатом, зависит от вас, и я думаю, что вы должны быть хороши сами по себе. На самом деле чтение документации клиента Influx Python ответило бы на большинство ваших вопросов.

...