文档文档

使用 Notebooks 对数据进行降采样

创建一个 Notebook 来对数据进行降采样。降采样聚合或总结指定时间间隔内的数据,随着时间的推移减少数据收集的总体磁盘使用量。

以下示例创建一个 Notebook,该 Notebook 查询过去一小时的 Coinbase 比特币价格示例数据,将数据降采样为十分钟摘要,然后将降采样的数据写入 InfluxDB Bucket。

  1. 如果您没有现有的 Bucket 来写入降采样的数据,请创建一个新的 Bucket

  2. 创建一个新的 Notebook.

  3. 从 Notebook 顶部的“时间范围”下拉列表中选择 过去 1 小时

  4. 构建查询 单元格中

    1. 示例 下的 FROM 列中,选择 Coinbase 比特币价格
    2. 在下一个 FILTER 列中,从下拉列表中选择 _measurement,然后在测量列表选择 coindesk 测量。
    3. 在下一个 FILTER 列中,从下拉列表中选择 _field,然后在字段列表选择 price 字段。
    4. 在下一个 FILTER 列中,从下拉列表中选择 code,然后选择一个货币代码。
  5. 单击 构建查询 单元格后的 以添加新单元格,然后选择 Flux 脚本

  6. 在 Flux 脚本单元格中

    1. 使用 __PREVIOUS_RESULT__ 将上一个 Notebook 单元格的输出加载到 Flux 脚本中。

    2. 使用 aggregateWindow() 将数据窗口化为十分钟间隔,并返回每个间隔的平均值。指定以下参数

      • every: 窗口间隔(应小于或等于查询时间范围的持续时间)。对于此示例,请使用 10m
      • fn: 聚合选择器 函数以应用于每个窗口。对于此示例,请使用 mean
    __PREVIOUS_RESULT__
        |> aggregateWindow(every: 10m, fn: mean)
        |> to(bucket: "example-bucket")
    
  7. 单击 Flux 脚本 单元格后的 以添加新单元格,然后选择 输出到 Bucket。从 选择一个 Bucket 下拉列表中选择一个 Bucket。

  8. (可选) 单击 并选择 注释 以添加注释来描述您的 Notebook,例如,“将 Coinbase 比特币价格降采样为每小时平均值。”

  9. 单击左上角的 预览 以验证您的 Notebook 运行并显示输出。

  10. 单击 运行 以运行 Notebook 并将降采样的数据写入您的 Bucket。

持续运行 Notebook

要持续运行您的 Notebook,请将 Notebook 导出为任务

  1. 单击 以添加新单元格,然后选择 任务

  2. 提供以下信息

    • Every:任务应运行的间隔。
    • Offset(可选) 定义间隔后等待执行任务的时间。这允许任务捕获延迟到达的数据。
  3. 单击 导出为任务


此页内容对您有帮助吗?

感谢您的反馈!


Flux 的未来

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

阅读更多

现已全面上市

InfluxDB 3 Core 和 Enterprise

快速启动。更快扩展。

获取更新

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

有关更多信息,请查看