Documentation

experimental.chain() function

The experimental.chain() function is subject to change at any time. By using this function, you accept the risks of experimental functions.

The experimental.chain() function runs two queries in a single Flux script sequentially and outputs the results of the second query. Flux typically executes multiple queries in a single script in parallel. Running the queries sequentially ensures any dependencies the second query has on the results of the first query are met.

Applicable use cases
  • Writing to a bucket and querying the written data in a single Flux script or InfluxDB task.
  • Execute queries sequentially in testing scenarios.
import "experimental"

experimental.chain(
    first: query1,
    second: query2,
)

Parameters

first

The first query to execute.

second

The second query to execute.

Examples

Write to a bucket and query the written data

import "experimental"

downsampled_max = from(bucket: "example-bucket-1")
    |> range(start: -1d)
    |> filter(fn: (r) => r._measurement == "example-measurement")
    |> aggregateWindow(every: 1h, fn: max)
    |> to(bucket: "downsample-1h-max", org: "example-org")

average_max = from(bucket: "downsample-1h-max")
    |> range(start: -1d)
    |> filter(fn: (r) => r.measurement == "example-measurement")
    |> mean()

experimental.chain(first: downsampled_max, second: average_max)

Upgrade to InfluxDB Cloud or InfluxDB 2.0!

InfluxDB Cloud and InfluxDB OSS 2.0 ready for production.