【问题标题】:Is there a way to fill a result of sparse data with 0 value points with Flux?有没有办法用 Flux 填充 0 值点的稀疏数据结果?
【发布时间】:2021-07-04 13:25:49
【问题描述】:

我每 5 分钟分配一次点,当值为 0 时,点就被省略了。我想用空值填充省略的数据。

我看到使用 InfluxQL 我可以做到:

group by time(5m) fill(0)

但我使用的是 InfluxDB 2。我试过这个查询:

      from(bucket:"%v")
         |> range(start: %d) 
         |> filter(fn: (r) => r._measurement == "volume" and r.id == "%v")
         |> window(every: 5m, period: 5m, createEmpty: true)
         |> fill(value: 0)

但它似乎不起作用。

感谢任何帮助。

【问题讨论】:

    标签: influxdb flux-influxdb


    【解决方案1】:

    事实证明这是 InfluxDB 中与 https://github.com/influxdata/influxdb/issues/21857 相关的错误

    显然window 函数也不起作用。

    【讨论】:

      【解决方案2】:

      fill() 函数仅替换数据中的空值,不会根据时间丢失数据点。目前没有可用的功能,虽然有一个是requested

      我在需要填写缺失数据的时间段内所做的是生成一个时间序列(零值)并将其与缺失数据的时间序列连接。

      【讨论】:

      • 我认为window(every: 5m, period: 5m, createEmpty: true) 会为每 5 分钟间隔创建空值?
      猜你喜欢
      • 2022-08-03
      • 2021-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-28
      • 2015-06-27
      相关资源
      最近更新 更多