package experimental

import "github.com/influxdata/flux/stdlib/experimental"

Index

Constants

const (
	DiffKind       = "experimental.diff"
	DefaultEpsilon = 1e-6
	DiffColumn     = "_diff"
)
const CatchKind = "catch"
const ExperimentalGroupKind = "experimental-group"
const PreviewKind = "experimental.preview"
const SetKind = "setExperimental"
const UnpivotKind = "experimental.unpivot"

Functions

func Catch

func Catch() values.Function

func MakeChainFunction

func MakeChainFunction() values.Function

func NewDiffTransformation

func NewDiffTransformation(id execute.DatasetID, spec *DiffProcedureSpec, wantID, gotID execute.DatasetID, mem memory.Allocator) (execute.Transformation, execute.Dataset, error)

func NewGroupTransformation

func NewGroupTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *GroupProcedureSpec) *groupTransformation

func NewMergeJoinCache

func NewMergeJoinCache(ctx context.Context, alloc memory.Allocator, fn interpreter.ResolvedFunction, left, right execute.DatasetID) *mergeJoinCache

func NewMergeJoinTransformation

func NewMergeJoinTransformation(d execute.Dataset, cache *mergeJoinCache) *mergeJoinTransformation

func NewPreviewTransformation

func NewPreviewTransformation(id execute.DatasetID, spec *PreviewProcedureSpec, mem memory.Allocator) (execute.Transformation, execute.Dataset, error)

func NewSetTransformation

func NewSetTransformation(
	d execute.Dataset,
	cache execute.TableBuilderCache,
	spec *SetProcedureSpec,
) execute.Transformation

func NewUnpivotTransformation

func NewUnpivotTransformation(spec *UnpivotProcedureSpec, id execute.DatasetID, alloc memory.Allocator) (execute.Transformation, execute.Dataset, error)

Types

type DiffOpSpec

type DiffOpSpec struct{}

func (*DiffOpSpec) Kind

func (s *DiffOpSpec) Kind() flux.OperationKind

type DiffProcedureSpec

type DiffProcedureSpec struct {
	plan.DefaultCost
}

func (*DiffProcedureSpec) Copy

func (*DiffProcedureSpec) Kind

type GroupOpSpec

type GroupOpSpec struct {
	Mode    string   `json:"mode"`
	Columns []string `json:"columns"`
}

GroupOpSpec in package experimental defines a special group() function that has just one mode called "extend", which adds additional columns to the group key. This is a workaround until schema introspection is implemented:

https://github.com/influxdata/flux/issues/27

Most of this code has simply been copied from stdlib/universe/group.go

func (*GroupOpSpec) Kind

func (s *GroupOpSpec) Kind() flux.OperationKind

type GroupProcedureSpec

type GroupProcedureSpec struct {
	plan.DefaultCost
	GroupKeys []string
}

func (*GroupProcedureSpec) Copy

func (*GroupProcedureSpec) Kind

type JoinOpSpec

type JoinOpSpec struct {
	Fn interpreter.ResolvedFunction
	// contains filtered or unexported fields
}

func (*JoinOpSpec) Kind

func (s *JoinOpSpec) Kind() flux.OperationKind

type MergeJoinProcedureSpec

type MergeJoinProcedureSpec struct {
	plan.DefaultCost

	Fn interpreter.ResolvedFunction `json:"fn"`
}

func (*MergeJoinProcedureSpec) Copy

func (*MergeJoinProcedureSpec) Kind

type PreviewOpSpec

type PreviewOpSpec struct {
	NRows   int64
	NTables int64
}

func (*PreviewOpSpec) Kind

func (s *PreviewOpSpec) Kind() flux.OperationKind

type PreviewProcedureSpec

type PreviewProcedureSpec struct {
	plan.DefaultCost
	NRows   int64
	NTables int64
}

func (*PreviewProcedureSpec) Copy

func (*PreviewProcedureSpec) Kind

type RowIterator

type RowIterator struct {
	// contains filtered or unexported fields
}

RowIterator iterates over the rows of several column readers

func NewRowIterator

func NewRowIterator(columns []flux.ColMeta, readers []flux.ColReader, timeCol int) *RowIterator

type SetOpSpec

type SetOpSpec struct {
	Object values.Object `json:"object"`
}

func (*SetOpSpec) Kind

func (s *SetOpSpec) Kind() flux.OperationKind

type SetProcedureSpec

type SetProcedureSpec struct {
	plan.DefaultCost
	Object values.Object
}

func (*SetProcedureSpec) Copy

func (*SetProcedureSpec) Kind

type UnpivotOpSpec

type UnpivotOpSpec struct {
	// contains filtered or unexported fields
}

func (*UnpivotOpSpec) Kind

func (s *UnpivotOpSpec) Kind() flux.OperationKind

type UnpivotProcedureSpec

type UnpivotProcedureSpec struct {
	plan.DefaultCost
	OtherColumns []string
}

func (*UnpivotProcedureSpec) Copy

func (*UnpivotProcedureSpec) Kind

Source Files

catch.go chain.go count.go diff.go distinct.go fill.go first.go group.go histogram.go histogram_quantile.go integral.go join.go kaufmansAMA.go last.go max.go mean.go min.go mode.go object_keys.go preview.go quantile.go set.go skew.go spread.go stddev.go sum.go unique.go unpivot.go window.go

Directories

PathSynopsis
stdlib/experimental/aggregate
stdlib/experimental/array
stdlib/experimental/bigtable
stdlib/experimental/bitwise
stdlib/experimental/csv
stdlib/experimental/date
stdlib/experimental/date/boundaries
stdlib/experimental/dynamic
stdlib/experimental/geo
stdlib/experimental/http
stdlib/experimental/http/requests
stdlib/experimental/influxdb
stdlib/experimental/iox
stdlib/experimental/json
stdlib/experimental/mqtt
stdlib/experimental/oee
stdlib/experimental/polyline
stdlib/experimental/polyline/rdp
stdlib/experimental/prometheus
stdlib/experimental/query
stdlib/experimental/record
stdlib/experimental/table
stdlib/experimental/usage
Version
v0.196.1 (latest)
Published
Feb 19, 2025
Platform
linux/amd64
Imports
26 packages
Last checked
1 day ago

Tools for package owners.