Flux 数据脚本语言
此页面记录了早期版本的 InfluxDB OSS。InfluxDB OSS v2 是最新的稳定版本。请参阅等效的 InfluxDB v2 文档: Flux 和 InfluxDB 入门指南。
Flux 是一种函数式数据脚本语言,专为查询、分析和处理时间序列数据而设计。它结合了 InfluxQL 的强大功能和 TICKscript 的功能,并将它们整合到一个统一的语法中。
Flux 已准备好用于生产环境,并包含在 InfluxDB v1.8+ 中。
Flux 设计原则
Flux 的设计目标是可用、可读、灵活、可组合、可测试、可贡献和可共享。它的语法在很大程度上受到 2018 年最流行的脚本语言 JavaScript 的启发,并采用函数式方法进行数据探索和处理。
以下示例说明了从存储桶(类似于 InfluxQL 数据库)中提取过去五分钟的数据,按 cpu
测量和 cpu=cpu-total
标签过滤该数据,以 1 分钟的时间间隔对数据进行窗口化,并计算每个窗口的平均值
from(bucket:"telegraf/autogen")
|> range(start:-1h)
|> filter(fn:(r) =>
r._measurement == "cpu" and
r.cpu == "cpu-total"
)
|> aggregateWindow(every: 1m, fn: mean)
使用 Flux 查询数据
逐步介绍 Flux 的常见和复杂查询及用例的指南。
启用 Flux
在您的 InfluxDB 配置中启用 Flux 的说明。
Flux 与 InfluxQL
Flux 是 InfluxQL 和其他类似 SQL 的查询语言的替代方案,用于查询和分析数据。Flux 使用函数式语言模式,使其功能非常强大、灵活,并能够克服 InfluxQL 的许多限制。本文概述了 Flux 可以实现但 InfluxQL 无法实现的许多任务,并提供了有关 Flux 和 InfluxQL 对等性的信息。
Flux 可以实现的功能
连接
InfluxQL 从未支持连接。可以使用 TICKscript 完成连接,但即使是 TICKscript 的连接功能也受到限制。Flux 的 join()
函数 允许您从任何存储桶、任何测量值以及任何列连接数据,只要每个数据集都包含要连接的列即可。这为真正强大且有用的操作打开了大门。
Flux 入门指南
Flux 入门指南,InfluxData 的新函数式数据脚本语言。本分步指南将引导您了解基础知识,并帮助您入门。
此页面是否对您有帮助?
感谢您的反馈!