文档资料

开始使用 Flux

查看等效的 InfluxDB v2 文档: 开始使用 Flux 和 InfluxDB.

Flux 是 InfluxData 为查询、分析和操作数据而设计的全新功能数据脚本语言。

本多部分入门指南将介绍与 Flux 相关的重要概念。它涵盖了使用 Flux 从 InfluxDB 查询时间序列数据,并介绍了 Flux 语法和函数。

您需要什么

InfluxDB v1.8+

Flux v0.65 集成到 InfluxDB v1.8 中,可用于查询存储在 InfluxDB 中的数据。


有关下载和安装 InfluxDB 的信息,请参阅 InfluxDB 安装


Chronograf v1.8+

不是必需的,但强烈推荐。Chronograf v1.8 的数据探索器提供了一个用户界面(UI),用于编写 Flux 脚本并可视化结果。Chronograf v1.8+ 中的仪表板也支持 Flux 查询。


有关下载和安装 Chronograf 的信息,请参阅 Chronograf 安装


关键概念

Flux 在您开始时引入了您应该了解的重要新概念。

Flux 为 InfluxDB 引入了“桶”这一新的数据存储概念。桶是一个命名位置,其中存储了具有保留策略的数据。它与 InfluxDB v1.x 的“数据库”类似,但它是数据库和保留策略的组合。当使用多个保留策略时,每个保留策略都被视为自己的桶。

Flux 的 from() 函数,它定义了 InfluxDB 数据源,需要一个 bucket 参数。当使用 Flux 与 InfluxDB v1.x 一起使用时,请使用以下桶命名约定,该约定将数据库名和保留策略组合成一个单独的桶名称

InfluxDB v1.x 桶命名约定
// Pattern
from(bucket:"<database>/<retention-policy>")

// Example
from(bucket:"telegraf/autogen")

管道前缀操作符

Flux 广泛使用管道前缀操作符(|>)来链接操作。在每个函数或操作之后,Flux 返回一个或多个包含数据的表。管道前缀操作符将这些表传输到下一个函数或操作,在那里它们进一步处理或操作。

Flux 将所有数据结构化为表。当数据从数据源流式传输时,Flux 以带注解的逗号分隔值(CSV)格式化它,表示表。然后函数操作或处理它们并输出新的表。这使得连接函数以构建复杂的查询变得容易。

分组键

每个表都有一个 分组键,它描述了表的内容。它是一列列表,其中表中的每一行都将具有相同的值。每行中具有唯一值的列不是分组键的一部分。

在函数处理和转换数据时,每个函数都会修改输出表的分组键。理解函数如何修改表和分组键对于正确地塑造您所需的数据输出至关重要。

示例分组键
[_start, _stop, _field, _measurement, host]

请注意,_time_value 被排除在示例分组键之外,因为它们对每行都是唯一的。

Flux 工具

您有多种编写和运行 Flux 查询的选项,但作为初学者,我们建议使用以下工具

Chronograf 数据探索器

Chronograf 数据探索器使得编写您的第一个 Flux 脚本并可视化结果变得简单。要使用 Chronograf 的 Flux UI,请打开 数据探索器,在图表占位符上方的源下拉菜单右侧,选择 Flux 作为源类型。

这将提供 模式脚本函数 选项卡。模式选项卡允许您探索数据。脚本选项卡是您编写 Flux 脚本的地方。函数选项卡提供了您在 Flux 查询中可用的函数列表。


这个页面有帮助吗?

感谢您的反馈!


Flux 的未来

Flux 正进入维护模式。您可以继续按当前方式使用它,无需对您的代码进行任何更改。

阅读更多

InfluxDB v3 增强功能和 InfluxDB 集群版现已正式发布

新功能,包括更快的查询性能和管理工具,推动了 InfluxDB v3 产品线的进步。InfluxDB 集群版现已正式发布。

InfluxDB v3 性能和功能

InfluxDB v3 产品线在查询性能方面取得了显著提升,并提供了新的管理工具。这些增强包括用于监控 InfluxDB 集群健康的操作仪表板、InfluxDB 云专用版中的单点登录(SSO)支持以及用于令牌和数据库的新管理 API。

了解新的 v3 增强功能


InfluxDB 集群版正式发布

InfluxDB 集群版现已正式发布,为您在自管理堆栈中提供 InfluxDB v3 的功能。

与我们谈谈 InfluxDB 集群版