Documentation

Python 客户端库

使用 InfluxDB 3 客户端

/api/v2/query API 端点以及相关工具,例如 InfluxDB v2 客户端库和 influx CLI,无法 查询 InfluxDB Cloud Serverless 集群。

InfluxDB 3 客户端库Flight SQL 客户端 可用,能够与您的代码集成,以便写入和查询存储在 InfluxDB Cloud Serverless 中的数据。

InfluxDB 3 支持多种不同工具用于 写入查询 数据。可以使用的工具比较 来与 InfluxDB Cloud Serverless 进行交互。

使用 InfluxDB Python client library 将 InfluxDB 集成到 Python 脚本和应用程序中。

本指南假设您对Python和InfluxDB有一定的熟悉度。
如果您刚开始,请参见 Get started with InfluxDB

开始之前

您需要以下先决条件:

  1. 安装 InfluxDB Python 库:

    pip install influxdb-client
    
  2. 使用HTTPS协议的InfluxDB Cloud Serverless区域URL - 例如: https://cloud2.influxdata.com。

  3. InfluxDB organization ID。

  4. 要写入的 bucket 的名称。

  5. 具有写入存储桶权限的InfluxDB API token出于安全考虑,我们建议设置环境变量来存储您的token,并避免在脚本中暴露原始token值。

使用Python将数据写入InfluxDB

按照步骤将line protocol数据写入InfluxDB Cloud Serverless存储桶。

  1. 在你的编辑器中,创建一个用于你的Python程序的文件–例如: write.py

  2. 在文件中,导入InfluxDB客户端库。

    import influxdb_client
    from influxdb_client.client.write_api import SYNCHRONOUS
    import os
    
  3. 为您的 bucket nameorganizationtoken 定义变量。

    bucket = "BUCKET_NAME"
    org = "INFLUX_ORG"
    # INFLUX_TOKEN is an environment variable you created for your API WRITE token
    token = os.getenv('INFLUX_TOKEN')
    url="https://cloud2.influxdata.com"
    
  4. 要实例化客户端,请调用 influxdb_client.InfluxDBClient() 方法,并传入以下关键字参数: urlorgtoken

    client = influxdb_client.InfluxDBClient(
       url=url,
       token=token,
       org=org
    )
    

    这个 InfluxDBClient 对象有一个 write_api 方法,用于配置。

  5. 通过调用 client.write_api() 方法并使用写入配置选项来实例化一个 写入客户端

    write_api = client.write_api(write_options=SYNCHRONOUS)
    
  6. 创建一个 point 对象,并使用 API 写入对象的 write 方法将其写入 InfluxDB。写入方法需要三个参数: bucketorg, 和 record

    p = influxdb_client.Point("my_measurement").tag("location", "Prague").field("temperature", 25.3)
    write_api.write(bucket=bucket, org=org, record=p)
    

完整示例编写脚本

import influxdb_client
from influxdb_client.client.write_api import SYNCHRONOUS
import os

bucket = "BUCKET_NAME"
org = "INFLUX_ORG"
# INFLUX_TOKEN is an environment variable you created for your API WRITE token
token = os.getenv('INFLUX_TOKEN')
url="https://cloud2.influxdata.com"

client = influxdb_client.InfluxDBClient(
    url=url,
    token=token,
    org=org
)

# Write script
write_api = client.write_api(write_options=SYNCHRONOUS)

p = influxdb_client.Point("my_measurement").tag("location", "Prague").field("temperature", 25.3)
write_api.write(bucket=bucket, org=org, record=p)

使用Python从InfluxDB查询数据

要查询您的 InfluxDB Cloud Serverless 桶,请使用InfluxDB 3 的 Python 客户端库



Flux的未来

Flux 正在进入维护模式。您可以像现在一样继续使用它,而无需对您的代码进行任何更改。

阅读更多

InfluxDB 3 开源版本现已公开Alpha测试

InfluxDB 3 Open Source is now available for alpha testing, licensed under MIT or Apache 2 licensing.

我们将发布两个产品作为测试版的一部分。

InfluxDB 3 核心,是我们新的开源产品。 它是一个用于时间序列和事件数据的实时数据引擎。 InfluxDB 3 企业版是建立在核心基础之上的商业版本,增加了历史查询能力、读取副本、高可用性、可扩展性和细粒度安全性。

有关如何开始的更多信息,请查看:

InfluxDB 云端无服务器