experimental.chain() is subject to change at any time.
By using this function, you accept the risks of experimental functions.
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 an InfluxDB bucket and query the written data in a single Flux script.
experimental.chain()does not gaurantee that data written to InfluxDB is immediately queryable. A delay between when data is written and when it is queryable may cause a query using
Execute queries sequentially in testing scenarios.
Function type signature
(first: stream[A], second: stream[B]) => stream[B] where A: Record, B: Record
(Required) First query to execute.
(Required) Second query to execute.
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)
Was this page helpful?
Thank you for your feedback!
Support and feedback
Thank you for being part of our community! We welcome and encourage your feedback and bug reports for Flux and this documentation. To find support, use the following resources:
InfluxDB Cloud customers can contact InfluxData Support.