产品更新:参数化查询

导航到

InfluxDB 3.0不仅在时序数据处理方面表现出色,而且通过提供优秀的开发者体验,使数据处理变得简单。作为这一使命的一部分,InfluxDB 团队最近为 InfluxDB 3.0 添加了参数化查询支持

什么是参数化查询?

参数化查询允许您使用占位符代替硬编码的参数来编写查询,从而为开发者提供以下好处

  • SQL注入预防:参数化查询允许将用户输入视为需要验证的数据,而不是可执行代码。
  • 访问控制:在应用程序级别,开发者可以使用参数化查询来定义数据操作和访问权限,以实现更细粒度的控制。
  • 代码可维护性:将数据与 SQL 逻辑分离,创建更容易阅读的代码。

InfluxDB 3.0 现在通过我们的客户端库支持您最熟悉的编程语言中的 InfluxQL 和 SQL 的参数化查询。

开始使用 InfluxDB V3 参数化查询

要开始使用参数化查询,您需要一个正在运行的 InfluxDB 3.0 实例。然后,您可以为首选语言安装最新的 V3 客户端库并创建一个参数化查询。以下客户端库支持参数化查询

以下示例使用 Python 客户端库创建一个参数化 SQL 查询,用于查找特定服务器主机——“server01”——的 CPU 值,并将结果打印到 Pandas 数据框中

from influxdb_client_3 import InfluxDBClient3

with InfluxDBClient3(host="https://us-east-1-1.aws.cloud2.influxdata.com",
                     token="my-token",
                     database="my-database") as client:

table = client.query("select * from cpu where host=$host", query_parameters={"host": "server01"})

print(table.to_pandas())

有关 InfluxDB 3.0 中参数化查询的更多详细信息,请参阅文档.

了解更多关于InfluxDB 3.0的信息