文档文档

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 即将进入维护模式。您可以继续像现在一样使用它,而无需对代码进行任何更改。

阅读更多

现已全面上市

InfluxDB 3 Core 和 Enterprise

快速启动。更快扩展。

获取更新

InfluxDB 3 Core 是一个开源、高速、近实时数据引擎,可实时收集和处理数据,并将其持久化到本地磁盘或对象存储。InfluxDB 3 Enterprise 构建在 Core 的基础上,增加了高可用性、读取副本、增强的安全性和数据压缩,以实现更快的查询和优化的存储。InfluxDB 3 Enterprise 的免费层可供非商业家庭或业余爱好者使用。

有关更多信息,请查看