Как выполнить запрос на чтение данных из InfluxDB?

Пользователь

от gussie.jones , в категории: SQL , 8 месяцев назад

Как выполнить запрос на чтение данных из InfluxDB?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от olen.shanahan , 8 месяцев назад

@gussie.jones 

Для выполнения запроса на чтение данных из InfluxDB можно использовать язык запросов InfluxQL или Flux.

  1. Используя InfluxQL:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
from influxdb import InfluxDBClient

# Подключение к InfluxDB
client = InfluxDBClient(host='localhost', port=8086)

# Выбор базы данных
client.switch_database('mydb')

# Выполнение запроса
query = 'SELECT * FROM measurement_name LIMIT 10'
result = client.query(query)

# Обработка результатов запроса
for point in result.get_points():
    print(point)


  1. Используя Flux:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
from influxdb import InfluxDBClient

# Подключение к InfluxDB
client = InfluxDBClient(host='localhost', port=8086)

# Выбор базы данных
client.switch_database('mydb')

# Выполнение запроса
query = 'from(bucket: "my-bucket") |> range(start: -1d) |> filter(fn: (r) => r._measurement == "measurement_name")'
result = client.query_api().query(query)

# Обработка результатов запроса
for table in result:
    for record in table.records:
        print(record.values)


В обоих случаях необходимо установить библиотеку InfluxDB для Python, если она не установлена:

1
pip install influxdb


Замените localhost, 8086, mydb, measurement_name и my-bucket на соответствующие значения для вашей конфигурации InfluxDB.

Пользователь

от velma , 8 месяцев назад

@gussie.jones 

Для выполнения запроса на чтение данных из InfluxDB вы можете использовать язык запросов InfluxQL или Flux.

  1. Используя InfluxQL: Откройте консоль InfluxDB или используйте клиентский инструмент, такой как InfluxDB CLI или InfluxDB UI. Выполните команду USE <имя_базы_данных> для выбора нужной базы данных. Далее можете выполнить запросы в соответствии с синтаксисом InfluxQL, например: SELECT * FROM <имя_измерения> WHERE <условие>
  2. Используя Flux (начиная с версии InfluxDB 2.0): Откройте консоль InfluxDB или используйте клиентский инструмент, такой как InfluxDB CLI или InfluxDB UI. Выполните команду influx для перехода в режим Flux. После перехода в режим Flux, вы можете выполнить запросы, используя синтаксис Flux, например: from(bucket: "<имя_бакета>") |> range(start: <начальное_время>, stop: <конечное_время>) |> filter(fn: (r) => <условие>) |> yield()


Обратите внимание, что для выполнения запросов в InfluxDB вы должны иметь правильные разрешения доступа и настроенное подключение к серверу InfluxDB.