2.4 KiB
2.4 KiB
title | description | menu | weight | introduced | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
experimental.chain() function | `experimental.chain()` runs two queries in a single Flux script sequentially and outputs the results of the second query. |
|
101 | 0.68.0 |
experimental.chain()
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
- Write to a bucket and query the written data in a single Flux script.
- Execute queries sequentially in testing scenarios.
Function type signature
(first: stream[A], second: stream[B]) => stream[B] where A: Record, B: Record
{{% caption %}}For more information, see Function type signatures.{{% /caption %}}
Parameters
first
({{< req >}}) First query to execute.
second
({{< req >}}) 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)