universe

package
v0.195.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 17, 2023 License: MIT Imports: 46 Imported by: 0

Documentation

Overview

Package universe contains the implementations for the builtin transformation functions.

Index

Constants

View Source
const (
	HistogramQuantileKind = "histogramQuantile"

	DefaultUpperBoundColumnLabel = "le"
)
View Source
const (
	PivotKind       = "pivot"
	SortedPivotKind = "sortedPivot"
)
View Source
const AggregateWindowKind = "aggregateWindow"
View Source
const ChandeMomentumOscillatorKind = "chandeMomentumOscillator"
View Source
const ColumnsKind = "columns"
View Source
const CountKind = "count"
View Source
const CovarianceKind = "covariance"
View Source
const CumulativeSumKind = "cumulativeSum"
View Source
const DerivativeKind = "derivative"
View Source
const DieKind = "die"
View Source
const DifferenceKind = "difference"
View Source
const DistinctKind = "distinct"
View Source
const DropKind = "drop"
View Source
const DuplicateKind = "duplicate"
View Source
const ElapsedKind = "elapsed"
View Source
const ExactQuantileAggKind = "exact-quantile-aggregate"
View Source
const ExactQuantileSelectKind = "exact-quantile-selector"
View Source
const ExponentialMovingAverageKind = "exponentialMovingAverage"
View Source
const FillKind = "fill"
View Source
const FilterKind = "filter"
View Source
const FirstKind = "first"
View Source
const GroupKind = "group"
View Source
const HistogramKind = "histogram"
View Source
const HoltWintersKind = "holtWinters"
View Source
const HourSelectionKind = "_hourSelection"
View Source
const IntegralKind = "integral"
View Source
const JoinKind = "join"
View Source
const KeepKind = "keep"
View Source
const KeyValuesKind = "keyValues"
View Source
const KeysKind = "keys"
View Source
const LastKind = "last"
View Source
const LimitKind = "limit"
View Source
const (
	MapKind = "map"
)
View Source
const MaxKind = "max"
View Source
const MeanKind = "mean"
View Source
const MergeJoinKind = "merge-join"
View Source
const MinKind = "min"
View Source
const ModeKind = "mode"
View Source
const MovingAverageKind = "movingAverage"
View Source
const (
	ParallelMergeKind = "ParallelMergeKind"
)
View Source
const QuantileKind = "quantile"
View Source
const RangeKind = "range"
View Source
const ReduceKind = "reduce"
View Source
const RelativeStrengthIndexKind = "relativeStrengthIndex"
View Source
const RenameKind = "rename"
View Source
const SampleKind = "sample"
View Source
const SchemaMutationKind = "SchemaMutation"

The base kind for SchemaMutations

View Source
const SetKind = "set"
View Source
const ShiftKind = "timeShift"
View Source
const SkewKind = "skew"
View Source
const SortKind = "sort"
View Source
const SortLimitKind = "sortLimit"
View Source
const SpreadKind = "spread"

SpreadKind is the registration name for Flux, query, plan, and execution.

View Source
const StateTrackingKind = "stateTracking"
View Source
const (
	StddevKind = "stddev"
)
View Source
const SumKind = "sum"
View Source
const TailKind = "tail"
View Source
const TripleExponentialDerivativeKind = "tripleExponentialDerivative"
View Source
const UnionKind = "union"
View Source
const UniqueKind = "unique"
View Source
const WindowKind = "window"
View Source
const YieldKind = "yield"

Variables

View Source
var Registrars = []MutationRegistrar{
	{
		Kind:   RenameKind,
		Type:   runtime.MustLookupBuiltinType("universe", "rename"),
		Create: createRenameOpSpec,
	},
	{
		Kind:   DropKind,
		Type:   runtime.MustLookupBuiltinType("universe", "drop"),
		Create: createDropOpSpec,
	},
	{
		Kind:   KeepKind,
		Type:   runtime.MustLookupBuiltinType("universe", "keep"),
		Create: createKeepOpSpec,
	},
	{
		Kind:   DuplicateKind,
		Type:   runtime.MustLookupBuiltinType("universe", "duplicate"),
		Create: createDuplicateOpSpec,
	},
}

A list of all MutationRegistrars to register. To register a new mutation, add an entry to this list.

View Source
var SchemaMutationOps = []flux.OperationKind{}

A list of all operations which should map to the SchemaMutationProcedure Added to dynamically upon calls to `Register()`

Functions

func CreateColumnsOpSpec

func CreateColumnsOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateCountOpSpec

func CreateCountOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateDistinctOpSpec

func CreateDistinctOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateFillOpSpec

func CreateFillOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateFirstOpSpec

func CreateFirstOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateHistogramOpSpec

func CreateHistogramOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateHistogramQuantileOpSpec

func CreateHistogramQuantileOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateIntegralOpSpec

func CreateIntegralOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateLastOpSpec

func CreateLastOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateMaxOpSpec

func CreateMaxOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateMeanOpSpec

func CreateMeanOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateMinOpSpec

func CreateMinOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateModeOpSpec

func CreateModeOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateQuantileOpSpec

func CreateQuantileOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateSkewOpSpec

func CreateSkewOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateSpreadOpSpec

func CreateSpreadOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateStddevOpSpec

func CreateStddevOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateSumOpSpec

func CreateSumOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateUniqueOpSpec

func CreateUniqueOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreateWindowOpSpec

func CreateWindowOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func CreatekamaOpSpec

func CreatekamaOpSpec(args flux.Arguments, a *flux.Administration) (flux.OperationSpec, error)

func Die

func Die() values.Function

func MakeContainsFunc

func MakeContainsFunc() values.Function

MakeContainsFunc will construct the "contains()" function.

Contains will test whether a given value is a member of the given set array.

func MakeLengthFunc

func MakeLengthFunc() values.Function

MakeLengthFunc create the "length()" function.

Length will return the length of the given arr array.

func NewChandeMomentumOscillatorTransformation

func NewChandeMomentumOscillatorTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *ChandeMomentumOscillatorProcedureSpec) *chandeMomentumOscillatorTransformation

func NewColumnsTransformation

func NewColumnsTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *ColumnsProcedureSpec) *columnsTransformation

func NewDifferenceTransformation

func NewDifferenceTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *DifferenceProcedureSpec) *differenceTransformation

func NewDistinctTransformation

func NewDistinctTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *DistinctProcedureSpec) *distinctTransformation

func NewElapsedTransformation

func NewElapsedTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *ElapsedProcedureSpec) *elapsedTransformation

func NewExponentialMovingAverageTransformation

func NewExponentialMovingAverageTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *ExponentialMovingAverageProcedureSpec) *exponentialMovingAverageTransformation

func NewFindColumnFunction

func NewFindColumnFunction() values.Value

func NewFindRecordFunction

func NewFindRecordFunction() values.Value

func NewFixedWindowTransformation

func NewFixedWindowTransformation(
	ctx context.Context,
	d execute.Dataset,
	cache execute.TableBuilderCache,
	bounds interval.Bounds,
	w interval.Window,
	timeCol,
	startCol,
	stopCol string,
	createEmpty bool,
) execute.Transformation

func NewGetColumnFunction

func NewGetColumnFunction() values.Value

func NewGetRecordFunction

func NewGetRecordFunction() values.Value

func NewHistogramTransformation

func NewHistogramTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *HistogramProcedureSpec) *histogramTransformation

func NewHoltWintersTransformation

func NewHoltWintersTransformation(d execute.Dataset, cache execute.TableBuilderCache, alloc memory.Allocator, spec *HoltWintersProcedureSpec) *holtWintersTransformation

func NewHourSelectionTransformation

func NewHourSelectionTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *HourSelectionProcedureSpec) *hourSelectionTransformation

func NewIntegralTransformation

func NewIntegralTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *IntegralProcedureSpec) *integralTransformation

func NewKeyValuesTransformation

func NewKeyValuesTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *KeyValuesProcedureSpec) *keyValuesTransformation

func NewKeysTransformation

func NewKeysTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *KeysProcedureSpec) *keysTransformation

func NewMergeJoinTransformation

func NewMergeJoinTransformation(d execute.Dataset, cache *MergeJoinCache, spec *MergeJoinProcedureSpec, parents []execute.DatasetID, tableNames map[execute.DatasetID]string) *mergeJoinTransformation

func NewModeTransformation

func NewModeTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *ModeProcedureSpec) *modeTransformation

func NewPivotTransformation

func NewPivotTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *PivotProcedureSpec) *pivotTransformation

func NewRangeTransformation

func NewRangeTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *RangeProcedureSpec, absolute execute.Bounds) (*rangeTransformation, error)

func NewReduceTransformation

func NewReduceTransformation(ctx context.Context, spec *ReduceProcedureSpec, d execute.Dataset, cache execute.TableBuilderCache) (*reduceTransformation, error)

func NewRelativeStrengthIndexTransformation

func NewRelativeStrengthIndexTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *RelativeStrengthIndexProcedureSpec) *relativeStrengthIndexTransformation

func NewTableFindFunction

func NewTableFindFunction() values.Value

func NewTailTransformation

func NewTailTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *TailProcedureSpec) *tailTransformation

func NewTripleExponentialDerivativeTransformation

func NewTripleExponentialDerivativeTransformation(d execute.Dataset, cache execute.TableBuilderCache, alloc memory.Allocator, spec *TripleExponentialDerivativeProcedureSpec) *tripleExponentialDerivativeTransformation

func NewUnionTransformation

func NewUnionTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *UnionProcedureSpec, parents []execute.DatasetID) *unionTransformation

func NewUniqueTransformation

func NewUniqueTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *UniqueProcedureSpec) *uniqueTransformation

func NewkamaTransformation

func NewkamaTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *KamaProcedureSpec) *kamaTransformation

func UseDeprecatedImpl

func UseDeprecatedImpl(spec plan.ProcedureSpec)

Types

type AggregateWindowCreateEmptyRule

type AggregateWindowCreateEmptyRule struct {
	AggregateWindowRule
}

func (AggregateWindowCreateEmptyRule) Name

func (AggregateWindowCreateEmptyRule) Pattern

func (AggregateWindowCreateEmptyRule) Rewrite

type AggregateWindowProcedureSpec

type AggregateWindowProcedureSpec struct {
	plan.DefaultCost
	WindowSpec          *WindowProcedureSpec
	AggregateKind       plan.ProcedureKind
	ValueCol            string
	UseStart            bool
	ForceAggregate      bool
	ParallelMergeFactor int
}

func (*AggregateWindowProcedureSpec) Copy

func (*AggregateWindowProcedureSpec) Kind

func (*AggregateWindowProcedureSpec) OutputAttributes

OutputAttributes will reflect that this operation can behave as a parallel merge, and produce the parallel merge attribute if the merge factor is greater than one. This operation produces tables that are sorted on _time.

func (*AggregateWindowProcedureSpec) RequiredAttributes

func (s *AggregateWindowProcedureSpec) RequiredAttributes() []plan.PhysicalAttributes

RequiredAttributes will reflect that this operation can behave as a parallel merge, and require that predecessors are run in parallel, if the merge factor is greater than one.

type AggregateWindowRule

type AggregateWindowRule struct{}

func (AggregateWindowRule) Name

func (a AggregateWindowRule) Name() string

func (AggregateWindowRule) Pattern

func (a AggregateWindowRule) Pattern() plan.Pattern

func (AggregateWindowRule) Rewrite

func (a AggregateWindowRule) Rewrite(ctx context.Context, node plan.Node) (plan.Node, bool, error)

type BuilderContext

type BuilderContext struct {
	TableColumns []flux.ColMeta
	TableKey     flux.GroupKey
	ColIdxMap    []int
}

func NewBuilderContext

func NewBuilderContext(tbl flux.Table) *BuilderContext

func (*BuilderContext) ColMap

func (b *BuilderContext) ColMap() []int

func (*BuilderContext) Cols

func (b *BuilderContext) Cols() []flux.ColMeta

func (*BuilderContext) Key

func (b *BuilderContext) Key() flux.GroupKey

type ChandeMomentumOscillatorOpSpec

type ChandeMomentumOscillatorOpSpec struct {
	N       int64    `json:"n"`
	Columns []string `json:"columns"`
}

func (*ChandeMomentumOscillatorOpSpec) Kind

type ChandeMomentumOscillatorProcedureSpec

type ChandeMomentumOscillatorProcedureSpec struct {
	plan.DefaultCost
	N       int64    `json:"n"`
	Columns []string `json:"columns"`
}

func (*ChandeMomentumOscillatorProcedureSpec) Copy

func (*ChandeMomentumOscillatorProcedureSpec) Kind

func (*ChandeMomentumOscillatorProcedureSpec) TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type ColumnsOpSpec

type ColumnsOpSpec struct {
	Column string `json:"column"`
}

func (*ColumnsOpSpec) Kind

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

type ColumnsProcedureSpec

type ColumnsProcedureSpec struct {
	plan.DefaultCost
	Column string
}

func (*ColumnsProcedureSpec) Copy

func (*ColumnsProcedureSpec) Kind

type CountAgg

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

func (*CountAgg) DoBool

func (a *CountAgg) DoBool(vs *array.Boolean)

func (*CountAgg) DoFloat

func (a *CountAgg) DoFloat(vs *array.Float)

func (*CountAgg) DoInt

func (a *CountAgg) DoInt(vs *array.Int)

func (*CountAgg) DoString

func (a *CountAgg) DoString(vs *array.String)

func (*CountAgg) DoUInt

func (a *CountAgg) DoUInt(vs *array.Uint)

func (*CountAgg) IsNull

func (a *CountAgg) IsNull() bool

func (*CountAgg) NewBoolAgg

func (a *CountAgg) NewBoolAgg() execute.DoBoolAgg

func (*CountAgg) NewFloatAgg

func (a *CountAgg) NewFloatAgg() execute.DoFloatAgg

func (*CountAgg) NewIntAgg

func (a *CountAgg) NewIntAgg() execute.DoIntAgg

func (*CountAgg) NewStringAgg

func (a *CountAgg) NewStringAgg() execute.DoStringAgg

func (*CountAgg) NewUIntAgg

func (a *CountAgg) NewUIntAgg() execute.DoUIntAgg

func (*CountAgg) Type

func (a *CountAgg) Type() flux.ColType

func (*CountAgg) ValueInt

func (a *CountAgg) ValueInt() int64

type CountOpSpec

type CountOpSpec struct {
	execute.SimpleAggregateConfig
}

func (*CountOpSpec) Kind

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

type CountProcedureSpec

type CountProcedureSpec struct {
	execute.SimpleAggregateConfig
}

func (*CountProcedureSpec) AggregateMethod

func (s *CountProcedureSpec) AggregateMethod() string

func (*CountProcedureSpec) Copy

func (*CountProcedureSpec) Kind

func (*CountProcedureSpec) ReAggregateSpec

func (s *CountProcedureSpec) ReAggregateSpec() plan.ProcedureSpec

func (*CountProcedureSpec) TriggerSpec

func (s *CountProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type CovarianceOpSpec

type CovarianceOpSpec struct {
	PearsonCorrelation bool     `json:"pearsonr"`
	ValueDst           string   `json:"valueDst"`
	Columns            []string `json:"column"`
}

func (*CovarianceOpSpec) Kind

type CovarianceProcedureSpec

type CovarianceProcedureSpec struct {
	plan.DefaultCost
	PearsonCorrelation bool
	ValueLabel         string
	Columns            []string
}

func (*CovarianceProcedureSpec) Copy

func (*CovarianceProcedureSpec) Kind

func (*CovarianceProcedureSpec) TriggerSpec

func (s *CovarianceProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type CovarianceTransformation

type CovarianceTransformation struct {
	execute.ExecutionNode
	// contains filtered or unexported fields
}

func (*CovarianceTransformation) DoFloat

func (t *CovarianceTransformation) DoFloat(xs, ys *array.Float)

func (*CovarianceTransformation) Finish

func (t *CovarianceTransformation) Finish(id execute.DatasetID, err error)

func (*CovarianceTransformation) Process

func (*CovarianceTransformation) RetractTable

func (t *CovarianceTransformation) RetractTable(id execute.DatasetID, key flux.GroupKey) error

func (*CovarianceTransformation) UpdateProcessingTime

func (t *CovarianceTransformation) UpdateProcessingTime(id execute.DatasetID, pt execute.Time) error

func (*CovarianceTransformation) UpdateWatermark

func (t *CovarianceTransformation) UpdateWatermark(id execute.DatasetID, mark execute.Time) error

type CumulativeSumOpSpec

type CumulativeSumOpSpec struct {
	Columns []string `json:"columns"`
}

func (*CumulativeSumOpSpec) Kind

type CumulativeSumProcedureSpec

type CumulativeSumProcedureSpec struct {
	plan.DefaultCost
	Columns []string
}

func (*CumulativeSumProcedureSpec) Copy

func (*CumulativeSumProcedureSpec) Kind

func (*CumulativeSumProcedureSpec) TriggerSpec

func (s *CumulativeSumProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type DerivativeOpSpec

type DerivativeOpSpec struct {
	Unit        flux.Duration `json:"unit"`
	NonNegative bool          `json:"nonNegative"`
	Columns     []string      `json:"columns"`
	TimeColumn  string        `json:"timeColumn"`
	InitialZero bool          `json:"initialZero"`
}

func (*DerivativeOpSpec) Kind

type DerivativeProcedureSpec

type DerivativeProcedureSpec struct {
	plan.DefaultCost
	Unit        flux.Duration `json:"unit"`
	NonNegative bool          `json:"non_negative"`
	Columns     []string      `json:"columns"`
	TimeColumn  string        `json:"timeColumn"`
	InitialZero bool          `json:"initialZero"`
}

func (*DerivativeProcedureSpec) Copy

func (*DerivativeProcedureSpec) Kind

func (*DerivativeProcedureSpec) TriggerSpec

func (s *DerivativeProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type DifferenceOpSpec

type DifferenceOpSpec struct {
	NonNegative bool     `json:"nonNegative"`
	Columns     []string `json:"columns"`
	KeepFirst   bool     `json:"keepFirst"`
	InitialZero bool     `json:"initialZero"`
}

func (*DifferenceOpSpec) Kind

type DifferenceProcedureSpec

type DifferenceProcedureSpec struct {
	plan.DefaultCost
	NonNegative bool     `json:"non_negative"`
	Columns     []string `json:"columns"`
	KeepFirst   bool     `json:"keepFirst"`
	InitialZero bool     `json:"initialZero"`
}

func (*DifferenceProcedureSpec) Copy

func (*DifferenceProcedureSpec) Kind

func (*DifferenceProcedureSpec) TriggerSpec

func (s *DifferenceProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type DistinctOpSpec

type DistinctOpSpec struct {
	Column string `json:"column"`
}

func (*DistinctOpSpec) Kind

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

type DistinctProcedureSpec

type DistinctProcedureSpec struct {
	plan.DefaultCost
	Column string
}

func (*DistinctProcedureSpec) Copy

func (*DistinctProcedureSpec) Kind

func (*DistinctProcedureSpec) TriggerSpec

func (s *DistinctProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type DropKeepMutator

type DropKeepMutator struct {
	KeepCols      map[string]bool
	DropCols      map[string]bool
	FlipPredicate bool
	// contains filtered or unexported fields
}

func NewDropMutator

func NewDropMutator(ctx context.Context, s *DropOpSpec) (*DropKeepMutator, error)

func NewKeepMutator

func NewKeepMutator(ctx context.Context, s *KeepOpSpec) (*DropKeepMutator, error)

func (*DropKeepMutator) Mutate

func (m *DropKeepMutator) Mutate(ctx context.Context, bctx *BuilderContext) error

type DropOpSpec

type DropOpSpec struct {
	Columns   []string                     `json:"columns"`
	Predicate interpreter.ResolvedFunction `json:"fn"`
}

func (*DropOpSpec) Copy

func (s *DropOpSpec) Copy() SchemaMutation

func (*DropOpSpec) Kind

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

func (*DropOpSpec) Mutator

func (s *DropOpSpec) Mutator(ctx context.Context) (SchemaMutator, error)

type DualImplProcedureSpec

type DualImplProcedureSpec struct {
	plan.ProcedureSpec
	plan.DefaultCost
	UseDeprecated bool
}

func (*DualImplProcedureSpec) Copy

func (*DualImplProcedureSpec) Kind

func (*DualImplProcedureSpec) PlanDetails

func (s *DualImplProcedureSpec) PlanDetails() string

type DuplicateMutator

type DuplicateMutator struct {
	Column string
	As     string
}

func NewDuplicateMutator

func NewDuplicateMutator(qs flux.OperationSpec) (*DuplicateMutator, error)

TODO: figure out what we'd like to do with the context and dependencies here

func (*DuplicateMutator) Mutate

func (m *DuplicateMutator) Mutate(ctx context.Context, bctx *BuilderContext) error

type DuplicateOpSpec

type DuplicateOpSpec struct {
	Column string `json:"columns"`
	As     string `json:"as"`
}

func (*DuplicateOpSpec) Copy

func (s *DuplicateOpSpec) Copy() SchemaMutation

func (*DuplicateOpSpec) Kind

func (*DuplicateOpSpec) Mutator

func (s *DuplicateOpSpec) Mutator(ctx context.Context) (SchemaMutator, error)

type ElapsedOpSpec

type ElapsedOpSpec struct {
	Unit       flux.Duration `json:"unit"`
	TimeColumn string        `json:"timeColumn"`
	ColumnName string        `json:"columnName"`
}

func (*ElapsedOpSpec) Kind

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

type ElapsedProcedureSpec

type ElapsedProcedureSpec struct {
	plan.DefaultCost
	Unit       flux.Duration `json:"unit"`
	TimeColumn string        `json:"timeColumn"`
	ColumnName string        `json:"columnName"`
}

func (*ElapsedProcedureSpec) Copy

func (*ElapsedProcedureSpec) Kind

type ExactQuantileAgg

type ExactQuantileAgg struct {
	Quantile float64
	// contains filtered or unexported fields
}

func (*ExactQuantileAgg) Copy

func (*ExactQuantileAgg) DoFloat

func (a *ExactQuantileAgg) DoFloat(vs *array.Float)

func (*ExactQuantileAgg) IsNull

func (a *ExactQuantileAgg) IsNull() bool

func (*ExactQuantileAgg) NewBoolAgg

func (a *ExactQuantileAgg) NewBoolAgg() execute.DoBoolAgg

func (*ExactQuantileAgg) NewFloatAgg

func (a *ExactQuantileAgg) NewFloatAgg() execute.DoFloatAgg

func (*ExactQuantileAgg) NewIntAgg

func (a *ExactQuantileAgg) NewIntAgg() execute.DoIntAgg

func (*ExactQuantileAgg) NewStringAgg

func (a *ExactQuantileAgg) NewStringAgg() execute.DoStringAgg

func (*ExactQuantileAgg) NewUIntAgg

func (a *ExactQuantileAgg) NewUIntAgg() execute.DoUIntAgg

func (*ExactQuantileAgg) Type

func (a *ExactQuantileAgg) Type() flux.ColType

func (*ExactQuantileAgg) ValueFloat

func (a *ExactQuantileAgg) ValueFloat() float64

type ExactQuantileAggProcedureSpec

type ExactQuantileAggProcedureSpec struct {
	Quantile float64 `json:"quantile"`
	execute.SimpleAggregateConfig
}

func (*ExactQuantileAggProcedureSpec) Copy

func (*ExactQuantileAggProcedureSpec) Kind

func (*ExactQuantileAggProcedureSpec) TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type ExactQuantileSelectProcedureSpec

type ExactQuantileSelectProcedureSpec struct {
	Quantile float64 `json:"quantile"`
	execute.SelectorConfig
}

func (*ExactQuantileSelectProcedureSpec) Copy

func (*ExactQuantileSelectProcedureSpec) Kind

func (*ExactQuantileSelectProcedureSpec) TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type ExactQuantileSelectorTransformation

type ExactQuantileSelectorTransformation struct {
	execute.ExecutionNode
	// contains filtered or unexported fields
}

func (*ExactQuantileSelectorTransformation) Finish

func (*ExactQuantileSelectorTransformation) Process

func (*ExactQuantileSelectorTransformation) RetractTable

func (*ExactQuantileSelectorTransformation) UpdateProcessingTime

func (t *ExactQuantileSelectorTransformation) UpdateProcessingTime(id execute.DatasetID, pt execute.Time) error

func (*ExactQuantileSelectorTransformation) UpdateWatermark

type ExponentialMovingAverageOpSpec

type ExponentialMovingAverageOpSpec struct {
	N int64 `json:"n"`
}

func (*ExponentialMovingAverageOpSpec) Kind

type ExponentialMovingAverageProcedureSpec

type ExponentialMovingAverageProcedureSpec struct {
	plan.DefaultCost
	N int64 `json:"n"`
}

func (*ExponentialMovingAverageProcedureSpec) Copy

func (*ExponentialMovingAverageProcedureSpec) Kind

func (*ExponentialMovingAverageProcedureSpec) TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type FillOpSpec

type FillOpSpec struct {
	Column      string `json:"column"`
	Type        string `json:"type"`
	Value       string `json:"value"`
	UsePrevious bool   `json:"use_previous"`
}

func (*FillOpSpec) Kind

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

type FillProcedureSpec

type FillProcedureSpec struct {
	plan.DefaultCost
	Column      string
	Value       values.Value
	UsePrevious bool
}

func (*FillProcedureSpec) Copy

func (*FillProcedureSpec) Kind

type FilterOpSpec

type FilterOpSpec struct {
	Fn      interpreter.ResolvedFunction `json:"fn"`
	OnEmpty string                       `json:"onEmpty,omitempty"`
}

func (*FilterOpSpec) Kind

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

type FilterProcedureSpec

type FilterProcedureSpec struct {
	plan.DefaultCost
	Fn              interpreter.ResolvedFunction
	KeepEmptyTables bool
}

func (*FilterProcedureSpec) Copy

func (*FilterProcedureSpec) Kind

func (*FilterProcedureSpec) PassThroughAttribute

func (s *FilterProcedureSpec) PassThroughAttribute(attrKey string) bool

func (*FilterProcedureSpec) PlanDetails

func (s *FilterProcedureSpec) PlanDetails() string

func (*FilterProcedureSpec) TriggerSpec

func (s *FilterProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type FirstOpSpec

type FirstOpSpec struct {
	execute.SelectorConfig
}

func (*FirstOpSpec) Kind

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

type FirstProcedureSpec

type FirstProcedureSpec struct {
	execute.SelectorConfig
}

func (*FirstProcedureSpec) Copy

func (*FirstProcedureSpec) Kind

func (*FirstProcedureSpec) TriggerSpec

func (s *FirstProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type FirstSelector

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

func (*FirstSelector) DoBool

func (s *FirstSelector) DoBool(vs *array.Boolean) []int

func (*FirstSelector) DoFloat

func (s *FirstSelector) DoFloat(vs *array.Float) []int

func (*FirstSelector) DoInt

func (s *FirstSelector) DoInt(vs *array.Int) []int

func (*FirstSelector) DoString

func (s *FirstSelector) DoString(vs *array.String) []int

func (*FirstSelector) DoTime

func (s *FirstSelector) DoTime(vs *array.Int) []int

func (*FirstSelector) DoUInt

func (s *FirstSelector) DoUInt(vs *array.Uint) []int

func (*FirstSelector) NewBoolSelector

func (s *FirstSelector) NewBoolSelector() execute.DoBoolIndexSelector

func (*FirstSelector) NewFloatSelector

func (s *FirstSelector) NewFloatSelector() execute.DoFloatIndexSelector

func (*FirstSelector) NewIntSelector

func (s *FirstSelector) NewIntSelector() execute.DoIntIndexSelector

func (*FirstSelector) NewStringSelector

func (s *FirstSelector) NewStringSelector() execute.DoStringIndexSelector

func (*FirstSelector) NewTimeSelector

func (s *FirstSelector) NewTimeSelector() execute.DoTimeIndexSelector

func (*FirstSelector) NewUIntSelector

func (s *FirstSelector) NewUIntSelector() execute.DoUIntIndexSelector

type GroupOpSpec

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

func (*GroupOpSpec) Kind

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

type GroupProcedureSpec

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

func (*GroupProcedureSpec) Copy

func (*GroupProcedureSpec) Kind

func (*GroupProcedureSpec) PassThroughAttribute

func (s *GroupProcedureSpec) PassThroughAttribute(attrKey string) bool

type HistogramOpSpec

type HistogramOpSpec struct {
	Column           string    `json:"column"`
	UpperBoundColumn string    `json:"upperBoundColumn"`
	CountColumn      string    `json:"countColumn"`
	Bins             []float64 `json:"bins"`
	Normalize        bool      `json:"normalize"`
}

func (*HistogramOpSpec) Kind

type HistogramProcedureSpec

type HistogramProcedureSpec struct {
	plan.DefaultCost
	HistogramOpSpec
}

func (*HistogramProcedureSpec) Copy

func (*HistogramProcedureSpec) Kind

type HistogramQuantileOpSpec

type HistogramQuantileOpSpec struct {
	Quantile         float64 `json:"quantile"`
	CountColumn      string  `json:"countColumn"`
	UpperBoundColumn string  `json:"upperBoundColumn"`
	ValueColumn      string  `json:"valueColumn"`
	MinValue         float64 `json:"minValue"`
	OnNonmonotonic   string  `json:"onNonmonotonic"`
}

func (*HistogramQuantileOpSpec) Kind

type HistogramQuantileProcedureSpec

type HistogramQuantileProcedureSpec struct {
	plan.DefaultCost
	Quantile         float64 `json:"quantile"`
	CountColumn      string  `json:"countColumn"`
	UpperBoundColumn string  `json:"upperBoundColumn"`
	ValueColumn      string  `json:"valueColumn"`
	MinValue         float64 `json:"minValue"`
	OnNonmonotonic   string  `json:"onNonmonotonic"`
}

func (*HistogramQuantileProcedureSpec) Copy

func (*HistogramQuantileProcedureSpec) Kind

type HoltWintersOpSpec

type HoltWintersOpSpec struct {
	WithFit    bool          `json:"with_fit"`
	Column     string        `json:"column"`
	TimeColumn string        `json:"time_column"`
	N          int64         `json:"n"`
	S          int64         `json:"s"`
	Interval   flux.Duration `json:"interval"`
	WithMinSSE bool          `json:"with_minsse"`
}

func (*HoltWintersOpSpec) Kind

type HoltWintersProcedureSpec

type HoltWintersProcedureSpec struct {
	plan.DefaultCost
	WithFit    bool
	Column     string
	TimeColumn string
	N          int64
	S          int64
	Interval   flux.Duration
	WithMinSSE bool
}

func (*HoltWintersProcedureSpec) Copy

func (*HoltWintersProcedureSpec) Kind

func (*HoltWintersProcedureSpec) TriggerSpec

func (s *HoltWintersProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type HourSelectionOpSpec

type HourSelectionOpSpec struct {
	Start      int64           `json:"start"`
	Stop       int64           `json:"stop"`
	Location   string          `json:"location"`
	Offset     values.Duration `json:"offset"`
	TimeColumn string          `json:"timeColumn"`
}

func (*HourSelectionOpSpec) Kind

type HourSelectionProcedureSpec

type HourSelectionProcedureSpec struct {
	plan.DefaultCost
	Start      int64           `json:"start"`
	Stop       int64           `json:"stop"`
	Location   string          `json:"location"`
	Offset     values.Duration `json:"offset"`
	TimeColumn string          `json:"timeColumn"`
}

func (*HourSelectionProcedureSpec) Copy

func (*HourSelectionProcedureSpec) Kind

func (*HourSelectionProcedureSpec) TriggerSpec

func (s *HourSelectionProcedureSpec) TriggerSpec() plan.TriggerSpec

type IntegralOpSpec

type IntegralOpSpec struct {
	Unit        flux.Duration `json:"unit"`
	TimeColumn  string        `json:"timeColumn"`
	Interpolate string        `json:"interpolate"`
	execute.SimpleAggregateConfig
}

func (*IntegralOpSpec) Kind

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

type IntegralProcedureSpec

type IntegralProcedureSpec struct {
	Unit        flux.Duration `json:"unit"`
	TimeColumn  string        `json:"timeColumn"`
	Interpolate bool          `json:"interpolate"`
	execute.SimpleAggregateConfig
}

func (*IntegralProcedureSpec) Copy

func (*IntegralProcedureSpec) Kind

func (*IntegralProcedureSpec) TriggerSpec

func (s *IntegralProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type JoinOpSpec

type JoinOpSpec struct {
	On     []string `json:"on"`
	Method string   `json:"method"`
	// contains filtered or unexported fields
}

JoinOpSpec specifies a particular join operation

func (*JoinOpSpec) Kind

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

type KamaOpSpec

type KamaOpSpec struct {
	N      int64  `json:"n"`
	Column string `json:"column"`
}

func (*KamaOpSpec) Kind

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

type KamaProcedureSpec

type KamaProcedureSpec struct {
	plan.DefaultCost
	N      int64  `json:"n"`
	Column string `json:"column"`
}

func (*KamaProcedureSpec) Copy

func (*KamaProcedureSpec) Kind

func (*KamaProcedureSpec) TriggerSpec

func (s *KamaProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type KeepOpSpec

type KeepOpSpec struct {
	Columns   []string                     `json:"columns"`
	Predicate interpreter.ResolvedFunction `json:"fn"`
}

func (*KeepOpSpec) Copy

func (s *KeepOpSpec) Copy() SchemaMutation

func (*KeepOpSpec) Kind

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

func (*KeepOpSpec) Mutator

func (s *KeepOpSpec) Mutator(ctx context.Context) (SchemaMutator, error)

type KeyValuesOpSpec

type KeyValuesOpSpec struct {
	KeyColumns  []string                     `json:"keyColumns"`
	PredicateFn interpreter.ResolvedFunction `json:"fn"`
}

func (*KeyValuesOpSpec) Kind

type KeyValuesProcedureSpec

type KeyValuesProcedureSpec struct {
	plan.DefaultCost
	KeyColumns []string                     `json:"keyColumns"`
	Predicate  interpreter.ResolvedFunction `json:"fn"`
}

func (*KeyValuesProcedureSpec) Copy

func (*KeyValuesProcedureSpec) Kind

func (*KeyValuesProcedureSpec) TriggerSpec

func (s *KeyValuesProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type KeysOpSpec

type KeysOpSpec struct {
	Column string `json:"column"`
}

func (*KeysOpSpec) Kind

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

type KeysProcedureSpec

type KeysProcedureSpec struct {
	plan.DefaultCost
	Column string
}

func (*KeysProcedureSpec) Copy

func (*KeysProcedureSpec) Kind

func (*KeysProcedureSpec) TriggerSpec

func (s *KeysProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type LastOpSpec

type LastOpSpec struct {
	execute.SelectorConfig
}

func (*LastOpSpec) Kind

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

type LastProcedureSpec

type LastProcedureSpec struct {
	execute.SelectorConfig
}

func (*LastProcedureSpec) Copy

func (*LastProcedureSpec) Kind

func (*LastProcedureSpec) TriggerSpec

func (s *LastProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type LastSelector

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

LastSelector selects the last row from a Flux table. Note that while 'last' and 'first' are conceptually similar, one is a row selector (last) while the other is an index selector (first). The reason for this is that it was easier to ensure a correct implementation of 'last' by defining it as a row selector when using multiple column readers to iterate over a Flux table.

func (*LastSelector) DoBool

func (s *LastSelector) DoBool(vs *array.Boolean, cr flux.ColReader)

func (*LastSelector) DoFloat

func (s *LastSelector) DoFloat(vs *array.Float, cr flux.ColReader)

func (*LastSelector) DoInt

func (s *LastSelector) DoInt(vs *array.Int, cr flux.ColReader)

func (*LastSelector) DoString

func (s *LastSelector) DoString(vs *array.String, cr flux.ColReader)

func (*LastSelector) DoTime

func (s *LastSelector) DoTime(vs *array.Int, cr flux.ColReader)

func (*LastSelector) DoUInt

func (s *LastSelector) DoUInt(vs *array.Uint, cr flux.ColReader)

func (*LastSelector) NewBoolSelector

func (s *LastSelector) NewBoolSelector() execute.DoBoolRowSelector

func (*LastSelector) NewFloatSelector

func (s *LastSelector) NewFloatSelector() execute.DoFloatRowSelector

func (*LastSelector) NewIntSelector

func (s *LastSelector) NewIntSelector() execute.DoIntRowSelector

func (*LastSelector) NewStringSelector

func (s *LastSelector) NewStringSelector() execute.DoStringRowSelector

func (*LastSelector) NewTimeSelector

func (s *LastSelector) NewTimeSelector() execute.DoTimeRowSelector

func (*LastSelector) NewUIntSelector

func (s *LastSelector) NewUIntSelector() execute.DoUIntRowSelector

func (*LastSelector) Rows

func (s *LastSelector) Rows() []execute.Row

type LimitOpSpec

type LimitOpSpec struct {
	N      int64 `json:"n"`
	Offset int64 `json:"offset"`
}

LimitOpSpec limits the number of rows returned per table.

func (*LimitOpSpec) Kind

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

type LimitProcedureSpec

type LimitProcedureSpec struct {
	plan.DefaultCost
	N      int64 `json:"n"`
	Offset int64 `json:"offset"`
}

func (*LimitProcedureSpec) Copy

func (*LimitProcedureSpec) Kind

func (*LimitProcedureSpec) TriggerSpec

func (s *LimitProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type MapOpSpec

type MapOpSpec struct {
	Fn       interpreter.ResolvedFunction `json:"fn"`
	MergeKey bool                         `json:"mergeKey"`
}

func (*MapOpSpec) Kind

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

type MapProcedureSpec

type MapProcedureSpec struct {
	plan.DefaultCost
	Fn       interpreter.ResolvedFunction `json:"fn"`
	MergeKey bool
}

func (*MapProcedureSpec) Copy

func (*MapProcedureSpec) Kind

type MaxFloatSelector

type MaxFloatSelector struct {
	MaxSelector
	// contains filtered or unexported fields
}

func (*MaxFloatSelector) DoFloat

func (s *MaxFloatSelector) DoFloat(vs *array.Float, cr flux.ColReader)

type MaxIntSelector

type MaxIntSelector struct {
	MaxSelector
	// contains filtered or unexported fields
}

func (*MaxIntSelector) DoInt

func (s *MaxIntSelector) DoInt(vs *array.Int, cr flux.ColReader)

type MaxOpSpec

type MaxOpSpec struct {
	execute.SelectorConfig
}

func (*MaxOpSpec) Kind

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

type MaxProcedureSpec

type MaxProcedureSpec struct {
	execute.SelectorConfig
}

func (*MaxProcedureSpec) Copy

func (*MaxProcedureSpec) Kind

func (*MaxProcedureSpec) TriggerSpec

func (s *MaxProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type MaxSelector

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

func (*MaxSelector) NewBoolSelector

func (s *MaxSelector) NewBoolSelector() execute.DoBoolRowSelector

func (*MaxSelector) NewFloatSelector

func (s *MaxSelector) NewFloatSelector() execute.DoFloatRowSelector

func (*MaxSelector) NewIntSelector

func (s *MaxSelector) NewIntSelector() execute.DoIntRowSelector

func (*MaxSelector) NewStringSelector

func (s *MaxSelector) NewStringSelector() execute.DoStringRowSelector

func (*MaxSelector) NewTimeSelector

func (s *MaxSelector) NewTimeSelector() execute.DoTimeRowSelector

func (*MaxSelector) NewUIntSelector

func (s *MaxSelector) NewUIntSelector() execute.DoUIntRowSelector

func (*MaxSelector) Rows

func (s *MaxSelector) Rows() []execute.Row

type MaxTimeSelector

type MaxTimeSelector struct {
	MaxIntSelector
}

func (*MaxTimeSelector) DoTime

func (s *MaxTimeSelector) DoTime(vs *array.Int, cr flux.ColReader)

type MaxUIntSelector

type MaxUIntSelector struct {
	MaxSelector
	// contains filtered or unexported fields
}

func (*MaxUIntSelector) DoUInt

func (s *MaxUIntSelector) DoUInt(vs *array.Uint, cr flux.ColReader)

type MeanAgg

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

func (*MeanAgg) DoFloat

func (a *MeanAgg) DoFloat(vs *array.Float)

func (*MeanAgg) DoInt

func (a *MeanAgg) DoInt(vs *array.Int)

func (*MeanAgg) DoUInt

func (a *MeanAgg) DoUInt(vs *array.Uint)

func (*MeanAgg) IsNull

func (a *MeanAgg) IsNull() bool

func (*MeanAgg) NewBoolAgg

func (a *MeanAgg) NewBoolAgg() execute.DoBoolAgg

func (*MeanAgg) NewFloatAgg

func (a *MeanAgg) NewFloatAgg() execute.DoFloatAgg

func (*MeanAgg) NewIntAgg

func (a *MeanAgg) NewIntAgg() execute.DoIntAgg

func (*MeanAgg) NewStringAgg

func (a *MeanAgg) NewStringAgg() execute.DoStringAgg

func (*MeanAgg) NewUIntAgg

func (a *MeanAgg) NewUIntAgg() execute.DoUIntAgg

func (*MeanAgg) Type

func (a *MeanAgg) Type() flux.ColType

func (*MeanAgg) ValueFloat

func (a *MeanAgg) ValueFloat() float64

type MeanOpSpec

type MeanOpSpec struct {
	execute.SimpleAggregateConfig
}

func (*MeanOpSpec) Kind

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

type MeanProcedureSpec

type MeanProcedureSpec struct {
	execute.SimpleAggregateConfig
}

func (*MeanProcedureSpec) Copy

func (*MeanProcedureSpec) Kind

func (*MeanProcedureSpec) TriggerSpec

func (s *MeanProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type MergeFiltersRule

type MergeFiltersRule struct{}

MergeFiltersRule merges Filter nodes whose body is a single return to create one Filter node.

func (MergeFiltersRule) Name

func (MergeFiltersRule) Name() string

func (MergeFiltersRule) Pattern

func (MergeFiltersRule) Pattern() plan.Pattern

func (MergeFiltersRule) Rewrite

func (MergeFiltersRule) Rewrite(ctx context.Context, filterNode plan.Node) (plan.Node, bool, error)

type MergeGroupRule

type MergeGroupRule struct{}

MergeGroupRule merges two group operations and keeps only the last one

func (MergeGroupRule) Name

func (r MergeGroupRule) Name() string

func (MergeGroupRule) Pattern

func (r MergeGroupRule) Pattern() plan.Pattern

Pattern returns the pattern that matches `group |> group`

func (MergeGroupRule) Rewrite

func (r MergeGroupRule) Rewrite(ctx context.Context, lastGroup plan.Node) (plan.Node, bool, error)

type MergeJoinCache

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

MergeJoinCache implements execute.DataCache This is where the all the tables to be joined are stored.

buffers: Buffers to hold the tables for each incoming stream.

postJoinKeys: The post-join group keys for all joined tables.

These group keys are constructed and stored as soon
as a table is consumed by the join operator, but prior
to actually joining the data.

reverseLookup: Each output group key that is stored is mapped to its

corresponding pre-join group keys. These pre-join group
keys are then used to retrieve their corresponding
tables from the buffers.

tables: All output tables are materialized and stored in this

map before being sent to downstream operators.

func NewMergeJoinCache

func NewMergeJoinCache(alloc memory.Allocator, datasetIDs []execute.DatasetID, tableNames map[execute.DatasetID]string, key []string) *MergeJoinCache

NewMergeJoinCache constructs a new instance of a MergeJoinCache

func (*MergeJoinCache) DiscardTable

func (c *MergeJoinCache) DiscardTable(key flux.GroupKey)

DiscardTable removes a table from the output buffer

func (*MergeJoinCache) ExpireTable

func (c *MergeJoinCache) ExpireTable(key flux.GroupKey)

ExpireTable removes the a key from the set of postJoinKeys. ExpireTable will be called after the table associated with key has already been materialized. As a result, it cannot not be materialized again. Each buffer is cleared of any stale data that arises as a result of this process.

func (*MergeJoinCache) ForEach

func (c *MergeJoinCache) ForEach(f func(flux.GroupKey) error) error

ForEach iterates over each table in the output stream

func (*MergeJoinCache) ForEachWithContext

func (c *MergeJoinCache) ForEachWithContext(f func(flux.GroupKey, execute.Trigger, execute.TableContext) error) error

ForEachWithContext iterates over each table in the output stream

func (*MergeJoinCache) SetTriggerSpec

func (c *MergeJoinCache) SetTriggerSpec(spec plan.TriggerSpec)

SetTriggerSpec sets the trigger rule for this cache

func (*MergeJoinCache) Table

func (c *MergeJoinCache) Table(key flux.GroupKey) (flux.Table, error)

Table joins the two tables associated with a single output group key and returns the resulting table

type MergeJoinProcedureSpec

type MergeJoinProcedureSpec struct {
	plan.DefaultCost
	TableNames []string `json:"table_names"`
	On         []string `json:"keys"`
}

func (*MergeJoinProcedureSpec) Copy

func (*MergeJoinProcedureSpec) Kind

type MinFloatSelector

type MinFloatSelector struct {
	MinSelector
	// contains filtered or unexported fields
}

func (*MinFloatSelector) DoFloat

func (s *MinFloatSelector) DoFloat(vs *array.Float, cr flux.ColReader)

type MinIntSelector

type MinIntSelector struct {
	MinSelector
	// contains filtered or unexported fields
}

func (*MinIntSelector) DoInt

func (s *MinIntSelector) DoInt(vs *array.Int, cr flux.ColReader)

type MinOpSpec

type MinOpSpec struct {
	execute.SelectorConfig
}

func (*MinOpSpec) Kind

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

type MinProcedureSpec

type MinProcedureSpec struct {
	execute.SelectorConfig
}

func (*MinProcedureSpec) Copy

func (*MinProcedureSpec) Kind

func (*MinProcedureSpec) TriggerSpec

func (s *MinProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type MinSelector

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

func (*MinSelector) NewBoolSelector

func (s *MinSelector) NewBoolSelector() execute.DoBoolRowSelector

func (*MinSelector) NewFloatSelector

func (s *MinSelector) NewFloatSelector() execute.DoFloatRowSelector

func (*MinSelector) NewIntSelector

func (s *MinSelector) NewIntSelector() execute.DoIntRowSelector

func (*MinSelector) NewStringSelector

func (s *MinSelector) NewStringSelector() execute.DoStringRowSelector

func (*MinSelector) NewTimeSelector

func (s *MinSelector) NewTimeSelector() execute.DoTimeRowSelector

func (*MinSelector) NewUIntSelector

func (s *MinSelector) NewUIntSelector() execute.DoUIntRowSelector

func (*MinSelector) Rows

func (s *MinSelector) Rows() []execute.Row

type MinTimeSelector

type MinTimeSelector struct {
	MinIntSelector
}

func (*MinTimeSelector) DoTime

func (s *MinTimeSelector) DoTime(vs *array.Int, cr flux.ColReader)

type MinUIntSelector

type MinUIntSelector struct {
	MinSelector
	// contains filtered or unexported fields
}

func (*MinUIntSelector) DoUInt

func (s *MinUIntSelector) DoUInt(vs *array.Uint, cr flux.ColReader)

type ModeOpSpec

type ModeOpSpec struct {
	Column string `json:"column"`
}

func (*ModeOpSpec) Kind

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

type ModeProcedureSpec

type ModeProcedureSpec struct {
	plan.DefaultCost
	Column string
}

func (*ModeProcedureSpec) Copy

func (*ModeProcedureSpec) Kind

func (*ModeProcedureSpec) TriggerSpec

func (s *ModeProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type MovingAverageOpSpec

type MovingAverageOpSpec struct {
	N int64 `json:"n"`
}

func (*MovingAverageOpSpec) Kind

type MovingAverageProcedureSpec

type MovingAverageProcedureSpec struct {
	plan.DefaultCost
	N int64 `json:"n"`
}

func (*MovingAverageProcedureSpec) Copy

func (*MovingAverageProcedureSpec) Kind

func (*MovingAverageProcedureSpec) TriggerSpec

func (s *MovingAverageProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type MutationRegistrar

type MutationRegistrar struct {
	Kind   flux.OperationKind
	Type   semantic.MonoType
	Create flux.CreateOperationSpec
}

A MutationRegistrar contains information needed to register a type of Operation Spec that will be converted into a SchemaMutator and embedded in a SchemaMutationProcedureSpec. Operations with a corresponding MutationRegistrar should not have their own ProcedureSpec.

func (MutationRegistrar) Register

func (m MutationRegistrar) Register()

type OptimizeWindowRule

type OptimizeWindowRule struct{}

func (OptimizeWindowRule) Name

func (r OptimizeWindowRule) Name() string

func (OptimizeWindowRule) Pattern

func (r OptimizeWindowRule) Pattern() plan.Pattern

func (OptimizeWindowRule) Rewrite

func (r OptimizeWindowRule) Rewrite(ctx context.Context, node plan.Node) (plan.Node, bool, error)

type PartitionMergeProcedureSpec

type PartitionMergeProcedureSpec struct {
	plan.DefaultCost
	Factor int
}

func (*PartitionMergeProcedureSpec) Copy

func (*PartitionMergeProcedureSpec) Kind

func (*PartitionMergeProcedureSpec) OutputAttributes

func (o *PartitionMergeProcedureSpec) OutputAttributes() plan.PhysicalAttributes

func (*PartitionMergeProcedureSpec) RequiredAttributes

func (o *PartitionMergeProcedureSpec) RequiredAttributes() []plan.PhysicalAttributes

type PartitionMergeTransformation

type PartitionMergeTransformation struct {
	execute.ExecutionNode
	// contains filtered or unexported fields
}

func (*PartitionMergeTransformation) Finish

func (*PartitionMergeTransformation) Process

func (*PartitionMergeTransformation) RetractTable

func (*PartitionMergeTransformation) UpdateProcessingTime

func (t *PartitionMergeTransformation) UpdateProcessingTime(id execute.DatasetID, pt execute.Time) error

func (*PartitionMergeTransformation) UpdateWatermark

func (t *PartitionMergeTransformation) UpdateWatermark(id execute.DatasetID, mark execute.Time) error

type PivotOpSpec

type PivotOpSpec struct {
	RowKey      []string `json:"rowKey"`
	ColumnKey   []string `json:"columnKey"`
	ValueColumn string   `json:"valueColumn"`
}

func (*PivotOpSpec) Kind

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

type PivotProcedureSpec

type PivotProcedureSpec struct {
	plan.DefaultCost
	RowKey      []string
	ColumnKey   []string
	ValueColumn string

	// IsSortedByFunc is a function that can be set by the planner
	// that can be used to determine if the parent is sorted by
	// the given columns.
	// TODO(jsternberg): See https://github.com/InfluxCommunity/flux/issues/2131 for details.
	IsSortedByFunc func(cols []string, desc bool) bool

	// IsKeyColumnFunc is a function that can be set by the planner
	// that can be used to determine if the given column would be
	// part of the group key if it were present.
	// TODO(jsternberg): See https://github.com/InfluxCommunity/flux/issues/2131 for details.
	IsKeyColumnFunc func(label string) bool
}

func (*PivotProcedureSpec) Copy

func (*PivotProcedureSpec) Kind

type QuantileAgg

type QuantileAgg struct {
	Quantile,
	Compression float64
	// contains filtered or unexported fields
}

func NewQuantileAgg

func NewQuantileAgg(q, comp float64, mem memory.Allocator, size int) *QuantileAgg

func (*QuantileAgg) Close

func (a *QuantileAgg) Close() error

func (*QuantileAgg) NewBoolAgg

func (a *QuantileAgg) NewBoolAgg() execute.DoBoolAgg

func (*QuantileAgg) NewFloatAgg

func (a *QuantileAgg) NewFloatAgg() execute.DoFloatAgg

func (*QuantileAgg) NewIntAgg

func (a *QuantileAgg) NewIntAgg() execute.DoIntAgg

func (*QuantileAgg) NewStringAgg

func (a *QuantileAgg) NewStringAgg() execute.DoStringAgg

func (*QuantileAgg) NewUIntAgg

func (a *QuantileAgg) NewUIntAgg() execute.DoUIntAgg

type QuantileAggState

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

func (*QuantileAggState) Close

func (s *QuantileAggState) Close() error

func (*QuantileAggState) DoFloat

func (s *QuantileAggState) DoFloat(vs *array.Float)

func (*QuantileAggState) DoInt

func (s *QuantileAggState) DoInt(vs *array.Int)

func (*QuantileAggState) DoUInt

func (s *QuantileAggState) DoUInt(vs *array.Uint)

func (*QuantileAggState) IsNull

func (s *QuantileAggState) IsNull() bool

func (*QuantileAggState) Type

func (s *QuantileAggState) Type() flux.ColType

func (*QuantileAggState) ValueFloat

func (s *QuantileAggState) ValueFloat() float64

type QuantileOpSpec

type QuantileOpSpec struct {
	Quantile    float64 `json:"quantile"`
	Compression float64 `json:"compression"`
	Method      string  `json:"method"`
	// quantile is either an aggregate, or a selector based on the options
	execute.SimpleAggregateConfig
	execute.SelectorConfig
}

func (*QuantileOpSpec) Kind

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

type RangeOpSpec

type RangeOpSpec struct {
	Start       flux.Time `json:"start"`
	Stop        flux.Time `json:"stop"`
	TimeColumn  string    `json:"timeColumn"`
	StartColumn string    `json:"startColumn"`
	StopColumn  string    `json:"stopColumn"`
}

func (*RangeOpSpec) Kind

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

type RangeProcedureSpec

type RangeProcedureSpec struct {
	plan.DefaultCost
	Bounds      flux.Bounds
	TimeColumn  string
	StartColumn string
	StopColumn  string
}

func (*RangeProcedureSpec) Copy

func (*RangeProcedureSpec) Kind

func (*RangeProcedureSpec) PassThroughAttribute

func (s *RangeProcedureSpec) PassThroughAttribute(attrKey string) bool

func (*RangeProcedureSpec) TimeBounds

func (s *RangeProcedureSpec) TimeBounds(predecessorBounds *plan.Bounds) *plan.Bounds

TimeBounds implements plan.BoundsAwareProcedureSpec

func (*RangeProcedureSpec) TriggerSpec

func (s *RangeProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type ReduceOpSpec

type ReduceOpSpec struct {
	Fn       interpreter.ResolvedFunction `json:"fn"`
	Identity values.Object                `json:"identity"`
}

func (*ReduceOpSpec) Kind

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

type ReduceProcedureSpec

type ReduceProcedureSpec struct {
	plan.DefaultCost
	Fn       interpreter.ResolvedFunction
	Identity values.Object
}

func (*ReduceProcedureSpec) Copy

func (*ReduceProcedureSpec) Kind

type RelativeStrengthIndexOpSpec

type RelativeStrengthIndexOpSpec struct {
	N       int64    `json:"n"`
	Columns []string `json:"columns"`
}

func (*RelativeStrengthIndexOpSpec) Kind

type RelativeStrengthIndexProcedureSpec

type RelativeStrengthIndexProcedureSpec struct {
	plan.DefaultCost
	N       int64    `json:"n"`
	Columns []string `json:"columns"`
}

func (*RelativeStrengthIndexProcedureSpec) Copy

func (*RelativeStrengthIndexProcedureSpec) Kind

func (*RelativeStrengthIndexProcedureSpec) TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type RemoveRedundantSort

type RemoveRedundantSort struct {
}

RemoveRedundantSort is a planner rule that will remove a sort node from the graph if its input is already sorted.

func (RemoveRedundantSort) Name

func (r RemoveRedundantSort) Name() string

func (RemoveRedundantSort) Pattern

func (r RemoveRedundantSort) Pattern() plan.Pattern

func (RemoveRedundantSort) Rewrite

func (r RemoveRedundantSort) Rewrite(ctx context.Context, node plan.Node) (plan.Node, bool, error)

type RemoveTrivialFilterRule

type RemoveTrivialFilterRule struct{}

RemoveTrivialFilterRule removes Filter nodes whose predicate always evaluates to true.

func (RemoveTrivialFilterRule) Name

func (RemoveTrivialFilterRule) Pattern

func (RemoveTrivialFilterRule) Rewrite

func (RemoveTrivialFilterRule) Rewrite(ctx context.Context, filterNode plan.Node) (plan.Node, bool, error)

type RenameMutator

type RenameMutator struct {
	Columns map[string]string
	// contains filtered or unexported fields
}

func NewRenameMutator

func NewRenameMutator(ctx context.Context, qs flux.OperationSpec) (*RenameMutator, error)

func (*RenameMutator) Mutate

func (m *RenameMutator) Mutate(ctx context.Context, bctx *BuilderContext) error

type RenameOpSpec

type RenameOpSpec struct {
	Columns map[string]string            `json:"columns"`
	Fn      interpreter.ResolvedFunction `json:"fn"`
}

func (*RenameOpSpec) Copy

func (s *RenameOpSpec) Copy() SchemaMutation

func (*RenameOpSpec) Kind

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

func (*RenameOpSpec) Mutator

func (s *RenameOpSpec) Mutator(ctx context.Context) (SchemaMutator, error)

type SampleOpSpec

type SampleOpSpec struct {
	N   int64 `json:"n"`
	Pos int64 `json:"pos"`
	execute.SelectorConfig
}

func (*SampleOpSpec) Kind

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

type SampleProcedureSpec

type SampleProcedureSpec struct {
	N   int64
	Pos int64
	execute.SelectorConfig
}

func (*SampleProcedureSpec) Copy

func (*SampleProcedureSpec) Kind

func (*SampleProcedureSpec) TriggerSpec

func (s *SampleProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type SampleSelector

type SampleSelector struct {
	N   int
	Pos int
	// contains filtered or unexported fields
}

func (*SampleSelector) DoBool

func (s *SampleSelector) DoBool(vs *array.Boolean) []int

func (*SampleSelector) DoFloat

func (s *SampleSelector) DoFloat(vs *array.Float) []int

func (*SampleSelector) DoInt

func (s *SampleSelector) DoInt(vs *array.Int) []int

func (*SampleSelector) DoString

func (s *SampleSelector) DoString(vs *array.String) []int

func (*SampleSelector) DoTime

func (s *SampleSelector) DoTime(vs *array.Int) []int

func (*SampleSelector) DoUInt

func (s *SampleSelector) DoUInt(vs *array.Uint) []int

func (*SampleSelector) NewBoolSelector

func (s *SampleSelector) NewBoolSelector() execute.DoBoolIndexSelector

func (*SampleSelector) NewFloatSelector

func (s *SampleSelector) NewFloatSelector() execute.DoFloatIndexSelector

func (*SampleSelector) NewIntSelector

func (s *SampleSelector) NewIntSelector() execute.DoIntIndexSelector

func (*SampleSelector) NewStringSelector

func (s *SampleSelector) NewStringSelector() execute.DoStringIndexSelector

func (*SampleSelector) NewTimeSelector

func (s *SampleSelector) NewTimeSelector() execute.DoTimeIndexSelector

func (*SampleSelector) NewUIntSelector

func (s *SampleSelector) NewUIntSelector() execute.DoUIntIndexSelector

type SchemaMutation

type SchemaMutation interface {
	Mutator(ctx context.Context) (SchemaMutator, error)
	Copy() SchemaMutation
}

type SchemaMutationProcedureSpec

type SchemaMutationProcedureSpec struct {
	plan.DefaultCost
	Mutations []SchemaMutation
}

func (*SchemaMutationProcedureSpec) Copy

func (*SchemaMutationProcedureSpec) Kind

type SchemaMutator

type SchemaMutator interface {
	Mutate(ctx context.Context, bctx *BuilderContext) error
}

type SetOpSpec

type SetOpSpec struct {
	Key   string `json:"key"`
	Value string `json:"value"`
}

func (*SetOpSpec) Kind

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

type SetProcedureSpec

type SetProcedureSpec struct {
	plan.DefaultCost
	Key, Value string
}

func (*SetProcedureSpec) Copy

func (*SetProcedureSpec) Kind

type ShiftOpSpec

type ShiftOpSpec struct {
	Shift   flux.Duration `json:"duration"`
	Columns []string      `json:"columns"`
}

func (*ShiftOpSpec) Kind

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

type ShiftProcedureSpec

type ShiftProcedureSpec struct {
	plan.DefaultCost
	Shift   flux.Duration
	Columns []string
	Now     time.Time
}

func (*ShiftProcedureSpec) Copy

func (*ShiftProcedureSpec) Kind

func (*ShiftProcedureSpec) TimeBounds

func (s *ShiftProcedureSpec) TimeBounds(predecessorBounds *plan.Bounds) *plan.Bounds

TimeBounds implements plan.BoundsAwareProcedureSpec

func (*ShiftProcedureSpec) TriggerSpec

func (s *ShiftProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type SkewAgg

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

func (*SkewAgg) DoFloat

func (a *SkewAgg) DoFloat(vs *array.Float)

func (*SkewAgg) DoInt

func (a *SkewAgg) DoInt(vs *array.Int)

func (*SkewAgg) DoUInt

func (a *SkewAgg) DoUInt(vs *array.Uint)

func (*SkewAgg) IsNull

func (a *SkewAgg) IsNull() bool

func (*SkewAgg) NewBoolAgg

func (a *SkewAgg) NewBoolAgg() execute.DoBoolAgg

func (*SkewAgg) NewFloatAgg

func (a *SkewAgg) NewFloatAgg() execute.DoFloatAgg

func (*SkewAgg) NewIntAgg

func (a *SkewAgg) NewIntAgg() execute.DoIntAgg

func (*SkewAgg) NewStringAgg

func (a *SkewAgg) NewStringAgg() execute.DoStringAgg

func (*SkewAgg) NewUIntAgg

func (a *SkewAgg) NewUIntAgg() execute.DoUIntAgg

func (*SkewAgg) Type

func (a *SkewAgg) Type() flux.ColType

func (*SkewAgg) ValueFloat

func (a *SkewAgg) ValueFloat() float64

type SkewOpSpec

type SkewOpSpec struct {
	execute.SimpleAggregateConfig
}

func (*SkewOpSpec) Kind

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

type SkewProcedureSpec

type SkewProcedureSpec struct {
	execute.SimpleAggregateConfig
}

func (*SkewProcedureSpec) Copy

func (*SkewProcedureSpec) Kind

func (*SkewProcedureSpec) TriggerSpec

func (s *SkewProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type SortLimitProcedureSpec

type SortLimitProcedureSpec struct {
	*SortProcedureSpec
	N int64
}

func (*SortLimitProcedureSpec) Copy

func (*SortLimitProcedureSpec) Kind

type SortLimitRule

type SortLimitRule struct{}

func (SortLimitRule) Name

func (s SortLimitRule) Name() string

func (SortLimitRule) Pattern

func (s SortLimitRule) Pattern() plan.Pattern

func (SortLimitRule) Rewrite

func (s SortLimitRule) Rewrite(ctx context.Context, node plan.Node) (plan.Node, bool, error)

type SortOpSpec

type SortOpSpec struct {
	Columns []string `json:"columns"`
	Desc    bool     `json:"desc"`
}

func (*SortOpSpec) Kind

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

type SortProcedureSpec

type SortProcedureSpec struct {
	plan.DefaultCost
	Columns []string
	Desc    bool
}

func (*SortProcedureSpec) Copy

func (*SortProcedureSpec) Kind

func (*SortProcedureSpec) OutputAttributes

func (s *SortProcedureSpec) OutputAttributes() plan.PhysicalAttributes

func (*SortProcedureSpec) TriggerSpec

func (s *SortProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type SortedPivotProcedureSpec

type SortedPivotProcedureSpec struct {
	plan.DefaultCost
	RowKey      []string
	ColumnKey   []string
	ValueColumn string
}

func (*SortedPivotProcedureSpec) Copy

func (*SortedPivotProcedureSpec) Kind

func (*SortedPivotProcedureSpec) OutputAttributes

func (s *SortedPivotProcedureSpec) OutputAttributes() plan.PhysicalAttributes

OutputAttributes implements the OutputAttributer interface used by the planner to keep track of various data attributes at different points in the plan. For sorted pivot, we know that the input data will be sorted on the row key, and that the output of this operation will preserve that order.

type SpreadAgg

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

SpreadAgg finds the difference between the max and min values a table

func (*SpreadAgg) IsNull

func (a *SpreadAgg) IsNull() bool

func (*SpreadAgg) NewBoolAgg

func (a *SpreadAgg) NewBoolAgg() execute.DoBoolAgg

func (*SpreadAgg) NewFloatAgg

func (a *SpreadAgg) NewFloatAgg() execute.DoFloatAgg

func (*SpreadAgg) NewIntAgg

func (a *SpreadAgg) NewIntAgg() execute.DoIntAgg

func (*SpreadAgg) NewStringAgg

func (a *SpreadAgg) NewStringAgg() execute.DoStringAgg

func (*SpreadAgg) NewUIntAgg

func (a *SpreadAgg) NewUIntAgg() execute.DoUIntAgg

type SpreadFloatAgg

type SpreadFloatAgg struct {
	SpreadAgg
	// contains filtered or unexported fields
}

func (*SpreadFloatAgg) DoFloat

func (a *SpreadFloatAgg) DoFloat(vs *array.Float)

Do searches for the min and max value of the array and caches them in the aggregate

func (*SpreadFloatAgg) Type

func (a *SpreadFloatAgg) Type() flux.ColType

func (*SpreadFloatAgg) ValueFloat

func (a *SpreadFloatAgg) ValueFloat() float64

Value returns the difference between max and min

type SpreadIntAgg

type SpreadIntAgg struct {
	SpreadAgg
	// contains filtered or unexported fields
}

func (*SpreadIntAgg) DoInt

func (a *SpreadIntAgg) DoInt(vs *array.Int)

DoInt searches for the min and max value of the array and caches them in the aggregate

func (*SpreadIntAgg) Type

func (a *SpreadIntAgg) Type() flux.ColType

func (*SpreadIntAgg) ValueInt

func (a *SpreadIntAgg) ValueInt() int64

Value returns the difference between max and min

type SpreadOpSpec

type SpreadOpSpec struct {
	execute.SimpleAggregateConfig
}

SpreadOpSpec defines the required arguments for Flux. Currently, spread takes no arguments.

func (*SpreadOpSpec) Kind

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

Kind is used to lookup createSpreadOpSpec producing SpreadOpSpec

type SpreadProcedureSpec

type SpreadProcedureSpec struct {
	execute.SimpleAggregateConfig
}

SpreadProcedureSpec is created when mapping from SpreadOpSpec.Kind to a CreateProcedureSpec.

func (*SpreadProcedureSpec) Copy

func (*SpreadProcedureSpec) Kind

Kind is used to lookup CreateTransformation producing SpreadAgg

func (*SpreadProcedureSpec) TriggerSpec

func (s *SpreadProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type SpreadUIntAgg

type SpreadUIntAgg struct {
	SpreadAgg
	// contains filtered or unexported fields
}

func (*SpreadUIntAgg) DoUInt

func (a *SpreadUIntAgg) DoUInt(vs *array.Uint)

Do searches for the min and max value of the array and caches them in the aggregate

func (*SpreadUIntAgg) Type

func (a *SpreadUIntAgg) Type() flux.ColType

func (*SpreadUIntAgg) ValueUInt

func (a *SpreadUIntAgg) ValueUInt() uint64

Value returns the difference between max and min

type StateTrackingOpSpec

type StateTrackingOpSpec struct {
	Fn             interpreter.ResolvedFunction `json:"fn"`
	CountColumn    string                       `json:"countColumn"`
	DurationColumn string                       `json:"durationColumn"`
	DurationUnit   flux.Duration                `json:"durationUnit"`
	TimeColumn     string                       `json:"timeColumn"`
}

func (*StateTrackingOpSpec) Kind

type StateTrackingProcedureSpec

type StateTrackingProcedureSpec struct {
	plan.DefaultCost
	Fn interpreter.ResolvedFunction
	CountColumn,
	DurationColumn string
	DurationUnit flux.Duration
	TimeCol      string
}

func (*StateTrackingProcedureSpec) Copy

func (*StateTrackingProcedureSpec) Kind

func (*StateTrackingProcedureSpec) TriggerSpec

func (s *StateTrackingProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type StddevAgg

type StddevAgg struct {
	Mode string
	// contains filtered or unexported fields
}

func (*StddevAgg) DoFloat

func (a *StddevAgg) DoFloat(vs *array.Float)

func (*StddevAgg) DoInt

func (a *StddevAgg) DoInt(vs *array.Int)

func (*StddevAgg) DoUInt

func (a *StddevAgg) DoUInt(vs *array.Uint)

func (*StddevAgg) IsNull

func (a *StddevAgg) IsNull() bool

func (*StddevAgg) NewBoolAgg

func (a *StddevAgg) NewBoolAgg() execute.DoBoolAgg

func (*StddevAgg) NewFloatAgg

func (a *StddevAgg) NewFloatAgg() execute.DoFloatAgg

func (*StddevAgg) NewIntAgg

func (a *StddevAgg) NewIntAgg() execute.DoIntAgg

func (*StddevAgg) NewStringAgg

func (a *StddevAgg) NewStringAgg() execute.DoStringAgg

func (*StddevAgg) NewUIntAgg

func (a *StddevAgg) NewUIntAgg() execute.DoUIntAgg

func (*StddevAgg) Type

func (a *StddevAgg) Type() flux.ColType

func (*StddevAgg) ValueFloat

func (a *StddevAgg) ValueFloat() float64

type StddevOpSpec

type StddevOpSpec struct {
	Mode string `json:"mode"`
	execute.SimpleAggregateConfig
}

func (*StddevOpSpec) Kind

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

type StddevProcedureSpec

type StddevProcedureSpec struct {
	Mode string `json:"mode"`
	execute.SimpleAggregateConfig
}

func (*StddevProcedureSpec) Copy

func (*StddevProcedureSpec) Kind

func (*StddevProcedureSpec) TriggerSpec

func (s *StddevProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type SumAgg

type SumAgg struct{}

func (*SumAgg) NewBoolAgg

func (a *SumAgg) NewBoolAgg() execute.DoBoolAgg

func (*SumAgg) NewFloatAgg

func (a *SumAgg) NewFloatAgg() execute.DoFloatAgg

func (*SumAgg) NewIntAgg

func (a *SumAgg) NewIntAgg() execute.DoIntAgg

func (*SumAgg) NewStringAgg

func (a *SumAgg) NewStringAgg() execute.DoStringAgg

func (*SumAgg) NewUIntAgg

func (a *SumAgg) NewUIntAgg() execute.DoUIntAgg

type SumFloatAgg

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

func (*SumFloatAgg) DoFloat

func (a *SumFloatAgg) DoFloat(vs *array.Float)

func (*SumFloatAgg) IsNull

func (a *SumFloatAgg) IsNull() bool

func (*SumFloatAgg) Type

func (a *SumFloatAgg) Type() flux.ColType

func (*SumFloatAgg) ValueFloat

func (a *SumFloatAgg) ValueFloat() float64

type SumIntAgg

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

func (*SumIntAgg) DoInt

func (a *SumIntAgg) DoInt(vs *array.Int)

func (*SumIntAgg) IsNull

func (a *SumIntAgg) IsNull() bool

func (*SumIntAgg) Type

func (a *SumIntAgg) Type() flux.ColType

func (*SumIntAgg) ValueInt

func (a *SumIntAgg) ValueInt() int64

type SumOpSpec

type SumOpSpec struct {
	execute.SimpleAggregateConfig
}

func (*SumOpSpec) Kind

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

type SumProcedureSpec

type SumProcedureSpec struct {
	execute.SimpleAggregateConfig
}

func (*SumProcedureSpec) AggregateMethod

func (s *SumProcedureSpec) AggregateMethod() string

func (*SumProcedureSpec) Copy

func (*SumProcedureSpec) Kind

func (*SumProcedureSpec) ReAggregateSpec

func (s *SumProcedureSpec) ReAggregateSpec() plan.ProcedureSpec

func (*SumProcedureSpec) TriggerSpec

func (s *SumProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type SumUIntAgg

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

func (*SumUIntAgg) DoUInt

func (a *SumUIntAgg) DoUInt(vs *array.Uint)

func (*SumUIntAgg) IsNull

func (a *SumUIntAgg) IsNull() bool

func (*SumUIntAgg) Type

func (a *SumUIntAgg) Type() flux.ColType

func (*SumUIntAgg) ValueUInt

func (a *SumUIntAgg) ValueUInt() uint64

type TDigestQuantileProcedureSpec

type TDigestQuantileProcedureSpec struct {
	Quantile    float64 `json:"quantile"`
	Compression float64 `json:"compression"`
	execute.SimpleAggregateConfig
}

func (*TDigestQuantileProcedureSpec) Copy

func (*TDigestQuantileProcedureSpec) Kind

func (*TDigestQuantileProcedureSpec) TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type TailOpSpec

type TailOpSpec struct {
	N      int64 `json:"n"`
	Offset int64 `json:"offset"`
}

TailOpSpec tails the number of rows returned per table.

func (*TailOpSpec) Kind

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

type TailProcedureSpec

type TailProcedureSpec struct {
	plan.DefaultCost
	N      int64 `json:"n"`
	Offset int64 `json:"offset"`
}

func (*TailProcedureSpec) Copy

func (*TailProcedureSpec) Kind

func (*TailProcedureSpec) TriggerSpec

func (s *TailProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type TripleExponentialDerivativeOpSpec

type TripleExponentialDerivativeOpSpec struct {
	N int64 `json:"n"`
}

func (*TripleExponentialDerivativeOpSpec) Kind

type TripleExponentialDerivativeProcedureSpec

type TripleExponentialDerivativeProcedureSpec struct {
	plan.DefaultCost
	N int64 `json:"n"`
}

func (*TripleExponentialDerivativeProcedureSpec) Copy

func (*TripleExponentialDerivativeProcedureSpec) Kind

func (*TripleExponentialDerivativeProcedureSpec) TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type UnionOpSpec

type UnionOpSpec struct {
}

func (*UnionOpSpec) Kind

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

type UnionProcedureSpec

type UnionProcedureSpec struct {
	plan.DefaultCost
}

func (*UnionProcedureSpec) Copy

func (*UnionProcedureSpec) Kind

type UniqueOpSpec

type UniqueOpSpec struct {
	Column string `json:"column"`
}

func (*UniqueOpSpec) Kind

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

type UniqueProcedureSpec

type UniqueProcedureSpec struct {
	plan.DefaultCost
	Column string
}

func (*UniqueProcedureSpec) Copy

func (*UniqueProcedureSpec) Kind

func (*UniqueProcedureSpec) TriggerSpec

func (s *UniqueProcedureSpec) TriggerSpec() plan.TriggerSpec

TriggerSpec implements plan.TriggerAwareProcedureSpec

type WindowOpSpec

type WindowOpSpec struct {
	Every       flux.Duration
	Period      flux.Duration
	Offset      flux.Duration
	Location    plan.Location
	TimeColumn  string
	StopColumn  string
	StartColumn string
	CreateEmpty bool
}

func (*WindowOpSpec) Kind

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

type WindowProcedureSpec

type WindowProcedureSpec struct {
	plan.DefaultCost
	Window plan.WindowSpec
	TimeColumn,
	StartColumn,
	StopColumn string
	CreateEmpty bool

	// Exposed for a test case. Do not use.
	Optimize bool
}

func (*WindowProcedureSpec) Copy

func (*WindowProcedureSpec) Kind

type WindowTriggerPhysicalRule

type WindowTriggerPhysicalRule struct{}

WindowTriggerPhysicalRule rewrites a physical window operation to use a narrow trigger if certain conditions are met.

func (WindowTriggerPhysicalRule) Name

func (WindowTriggerPhysicalRule) Pattern

Pattern matches the physical operator pattern consisting of a window operator with a single predecessor of any kind.

func (WindowTriggerPhysicalRule) Rewrite

Rewrite modifies a window's trigger spec so long as it doesn't have any window descendents that occur earlier in the plan and as long as none of its descendents merge multiple streams together like union and join.

type YieldOpSpec

type YieldOpSpec struct {
	Name string `json:"name"`
}

func (*YieldOpSpec) Kind

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

type YieldProcedureSpec

type YieldProcedureSpec struct {
	plan.DefaultCost
	Name string `json:"name"`
}

func (*YieldProcedureSpec) Copy

func (*YieldProcedureSpec) Kind

func (*YieldProcedureSpec) YieldName

func (s *YieldProcedureSpec) YieldName() string

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL