universe

package
v0.18.0 Latest Latest
Warning

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

Go to latest
Published: Feb 6, 2019 License: MIT Imports: 24 Imported by: 6

Documentation

Overview

Package transformations contains the implementations for the builtin transformation functions.

Index

Constants

View Source
const ColumnsKind = "columns"
View Source
const CountKind = "count"
View Source
const CovarianceKind = "covariance"
View Source
const CumulativeSumKind = "cumulativeSum"
View Source
const DefaultUpperBoundColumnLabel = "le"
View Source
const DerivativeKind = "derivative"
View Source
const DifferenceKind = "difference"
View Source
const DistinctKind = "distinct"
View Source
const DropKind = "drop"
View Source
const DuplicateKind = "duplicate"
View Source
const ExactPercentileAggKind = "exact-percentile-aggregate"
View Source
const ExactPercentileSelectKind = "exact-percentile-selector"
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 HistogramQuantileKind = "histogramQuantile"
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 PercentileKind = "percentile"
View Source
const (
	PivotKind = "pivot"
)
View Source
const RangeKind = "range"
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 = "shift"
View Source
const SkewKind = "skew"
View Source
const SortKind = "sort"
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 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,
		Args: map[string]semantic.PolyType{
			"columns": semantic.Object,
			"fn": semantic.NewFunctionPolyType(semantic.FunctionPolySignature{
				Parameters: map[string]semantic.PolyType{
					"column": semantic.String,
				},
				Required: semantic.LabelSet{"column"},
				Return:   semantic.String,
			}),
		},
		Create: createRenameOpSpec,
		New:    newRenameOp,
	},
	{
		Kind: DropKind,
		Args: map[string]semantic.PolyType{
			"columns": semantic.NewArrayPolyType(semantic.String),
			"fn": semantic.NewFunctionPolyType(semantic.FunctionPolySignature{
				Parameters: map[string]semantic.PolyType{
					"column": semantic.String,
				},
				Required: semantic.LabelSet{"column"},
				Return:   semantic.Bool,
			}),
		},
		Create: createDropOpSpec,
		New:    newDropOp,
	},
	{
		Kind: KeepKind,
		Args: map[string]semantic.PolyType{
			"columns": semantic.NewArrayPolyType(semantic.String),
			"fn": semantic.NewFunctionPolyType(semantic.FunctionPolySignature{
				Parameters: map[string]semantic.PolyType{
					"column": semantic.String,
				},
				Required: semantic.LabelSet{"column"},
				Return:   semantic.Bool,
			}),
		},
		Create: createKeepOpSpec,
		New:    newKeepOp,
	},
	{
		Kind: DuplicateKind,
		Args: map[string]semantic.PolyType{
			"column": semantic.String,
			"as":     semantic.String,
		},
		Create: createDuplicateOpSpec,
		New:    newDuplicateOp,
	},
}

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 NewColumnsTransformation

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

func NewCumulativeSumTransformation

func NewCumulativeSumTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *CumulativeSumProcedureSpec) *cumulativeSumTransformation

func NewDerivativeTransformation

func NewDerivativeTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *DerivativeProcedureSpec) *derivativeTransformation

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 NewFillTransformation

func NewFillTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *FillProcedureSpec) *fillTransformation

func NewFilterTransformation

func NewFilterTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *FilterProcedureSpec) (*filterTransformation, error)

func NewFixedWindowTransformation

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

func NewGroupTransformation

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

func NewHistogramTransformation

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

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 NewLimitTransformation

func NewLimitTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *LimitProcedureSpec) *limitTransformation

func NewMapTransformation

func NewMapTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *MapProcedureSpec) (*mapTransformation, error)

func NewMergeJoinTransformation

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

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 NewSchemaMutationTransformation

func NewSchemaMutationTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec plan.ProcedureSpec) (*schemaMutationTransformation, error)

func NewShiftTransformation

func NewShiftTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *ShiftProcedureSpec) *shiftTransformation

func NewSortTransformation

func NewSortTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *SortProcedureSpec) *sortTransformation

func NewStateTrackingTransformation

func NewStateTrackingTransformation(d execute.Dataset, cache execute.TableBuilderCache, spec *StateTrackingProcedureSpec) (*stateTrackingTransformation, error)

func NewUnionTransformation added in v0.15.0

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

Types

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 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.Float64)

func (*CountAgg) DoInt

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

func (*CountAgg) DoString

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

func (*CountAgg) DoUInt

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

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.AggregateConfig
}

func (*CountOpSpec) Kind

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

type CountProcedureSpec

type CountProcedureSpec struct {
	execute.AggregateConfig
}

func (*CountProcedureSpec) AggregateMethod

func (s *CountProcedureSpec) AggregateMethod() string

func (*CountProcedureSpec) Copy

func (*CountProcedureSpec) Kind

func (*CountProcedureSpec) ReAggregateSpec

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

type CovarianceOpSpec

type CovarianceOpSpec struct {
	PearsonCorrelation bool   `json:"pearsonr"`
	ValueDst           string `json:"valueDst"`
	execute.AggregateConfig
}

func (*CovarianceOpSpec) Kind

type CovarianceProcedureSpec

type CovarianceProcedureSpec struct {
	PearsonCorrelation bool
	ValueLabel         string
	execute.AggregateConfig
}

func (*CovarianceProcedureSpec) Copy

func (*CovarianceProcedureSpec) Kind

type CovarianceTransformation

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

func (*CovarianceTransformation) DoFloat

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

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

type DerivativeOpSpec

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

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"`
}

func (*DerivativeProcedureSpec) Copy

func (*DerivativeProcedureSpec) Kind

type DifferenceOpSpec

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

func (*DifferenceOpSpec) Kind

type DifferenceProcedureSpec

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

func (*DifferenceProcedureSpec) Copy

func (*DifferenceProcedureSpec) Kind

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

type DropKeepMutator

type DropKeepMutator struct {
	KeepCols      map[string]bool
	DropCols      map[string]bool
	Predicate     compiler.Func
	FlipPredicate bool
	ParamName     string
	Input         values.Object
}

func NewDropKeepMutator

func NewDropKeepMutator(qs flux.OperationSpec) (*DropKeepMutator, error)

func (*DropKeepMutator) Mutate

func (m *DropKeepMutator) Mutate(ctx *BuilderContext) error

type DropOpSpec

type DropOpSpec struct {
	Columns   []string                     `json:"columns"`
	Predicate *semantic.FunctionExpression `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() (SchemaMutator, error)

type DuplicateMutator

type DuplicateMutator struct {
	Column string
	As     string
}

func NewDuplicateMutator

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

func (*DuplicateMutator) Mutate

func (m *DuplicateMutator) Mutate(ctx *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() (SchemaMutator, error)

type ExactPercentileAgg

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

func (*ExactPercentileAgg) Copy

func (*ExactPercentileAgg) DoFloat

func (a *ExactPercentileAgg) DoFloat(vs *array.Float64)

func (*ExactPercentileAgg) IsNull

func (a *ExactPercentileAgg) IsNull() bool

func (*ExactPercentileAgg) NewBoolAgg

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

func (*ExactPercentileAgg) NewFloatAgg

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

func (*ExactPercentileAgg) NewIntAgg

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

func (*ExactPercentileAgg) NewStringAgg

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

func (*ExactPercentileAgg) NewUIntAgg

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

func (*ExactPercentileAgg) Type

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

func (*ExactPercentileAgg) ValueFloat

func (a *ExactPercentileAgg) ValueFloat() float64

type ExactPercentileAggProcedureSpec

type ExactPercentileAggProcedureSpec struct {
	Percentile float64 `json:"percentile"`
	execute.AggregateConfig
}

func (*ExactPercentileAggProcedureSpec) Copy

func (*ExactPercentileAggProcedureSpec) Kind

type ExactPercentileSelectProcedureSpec

type ExactPercentileSelectProcedureSpec struct {
	Percentile float64 `json:"percentile"`
	execute.SelectorConfig
}

func (*ExactPercentileSelectProcedureSpec) Copy

func (*ExactPercentileSelectProcedureSpec) Kind

type ExactPercentileSelectorTransformation

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

func (*ExactPercentileSelectorTransformation) Finish

func (*ExactPercentileSelectorTransformation) Process

func (*ExactPercentileSelectorTransformation) RetractTable

func (*ExactPercentileSelectorTransformation) UpdateProcessingTime

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

func (*ExactPercentileSelectorTransformation) UpdateWatermark

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 *semantic.FunctionExpression `json:"fn"`
}

func (*FilterOpSpec) Kind

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

type FilterProcedureSpec

type FilterProcedureSpec struct {
	plan.DefaultCost
	Fn *semantic.FunctionExpression
}

func (*FilterProcedureSpec) Copy

func (*FilterProcedureSpec) Kind

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

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.Float64) []int

func (*FirstSelector) DoInt

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

func (*FirstSelector) DoString

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

func (*FirstSelector) DoUInt

func (s *FirstSelector) DoUInt(vs *array.Uint64) []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) 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

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"`
}

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"`
}

func (*HistogramQuantileProcedureSpec) Copy

func (*HistogramQuantileProcedureSpec) Kind

type IntegralOpSpec

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

func (*IntegralOpSpec) Kind

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

type IntegralProcedureSpec

type IntegralProcedureSpec struct {
	Unit       flux.Duration `json:"unit"`
	TimeColumn string        `json:"timeColumn"`
	execute.AggregateConfig
}

func (*IntegralProcedureSpec) Copy

func (*IntegralProcedureSpec) Kind

type JoinOpSpec

type JoinOpSpec struct {
	TableNames map[flux.OperationID]string `json:"tableNames"`
	On         []string                    `json:"on"`
	Method     string                      `json:"method"`
	// contains filtered or unexported fields
}

JoinOpSpec specifies a particular join operation

func (*JoinOpSpec) IDer

func (t *JoinOpSpec) IDer(ider flux.IDer)

func (*JoinOpSpec) Kind

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

type KeepOpSpec

type KeepOpSpec struct {
	Columns   []string                     `json:"columns"`
	Predicate *semantic.FunctionExpression `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() (SchemaMutator, error)

type KeyValuesOpSpec

type KeyValuesOpSpec struct {
	KeyColumns  []string                     `json:"keyColumns"`
	PredicateFn *semantic.FunctionExpression `json:"fn"`
}

func (*KeyValuesOpSpec) Kind

type KeyValuesProcedureSpec

type KeyValuesProcedureSpec struct {
	plan.DefaultCost
	KeyColumns []string                     `json:"keyColumns"`
	Predicate  *semantic.FunctionExpression `json:"fn"`
}

func (*KeyValuesProcedureSpec) Copy

func (*KeyValuesProcedureSpec) Kind

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

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

type LastSelector

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

func (*LastSelector) DoBool

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

func (*LastSelector) DoFloat

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

func (*LastSelector) DoInt

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

func (*LastSelector) DoString

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

func (*LastSelector) DoUInt

func (s *LastSelector) DoUInt(vs *array.Uint64, 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) 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

type MapOpSpec

type MapOpSpec struct {
	Fn       *semantic.FunctionExpression `json:"fn"`
	MergeKey bool                         `json:"mergeKey"`
}

func (*MapOpSpec) Kind

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

type MapProcedureSpec

type MapProcedureSpec struct {
	plan.DefaultCost
	Fn       *semantic.FunctionExpression
	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.Float64, cr flux.ColReader)

type MaxIntSelector

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

func (*MaxIntSelector) DoInt

func (s *MaxIntSelector) DoInt(vs *array.Int64, 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

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) NewUIntSelector

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

func (*MaxSelector) Rows

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

type MaxUIntSelector

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

func (*MaxUIntSelector) DoUInt

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

type MeanAgg

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

func (*MeanAgg) DoFloat

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

func (*MeanAgg) DoInt

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

func (*MeanAgg) DoUInt

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

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.AggregateConfig
}

func (*MeanOpSpec) Kind

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

type MeanProcedureSpec

type MeanProcedureSpec struct {
	execute.AggregateConfig
}

func (*MeanProcedureSpec) Copy

func (*MeanProcedureSpec) Kind

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

returns the pattern that matches `group |> group`

func (MergeGroupRule) Rewrite

func (r MergeGroupRule) Rewrite(lastGroup plan.PlanNode) (plan.PlanNode, 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))

ForEach iterates over each table in the output stream

func (*MergeJoinCache) ForEachWithContext

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

ForEachWithContext iterates over each table in the output stream

func (*MergeJoinCache) SetTriggerSpec

func (c *MergeJoinCache) SetTriggerSpec(spec flux.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.Float64, cr flux.ColReader)

type MinIntSelector

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

func (*MinIntSelector) DoInt

func (s *MinIntSelector) DoInt(vs *array.Int64, 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

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) NewUIntSelector

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

func (*MinSelector) Rows

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

type MinUIntSelector

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

func (*MinUIntSelector) DoUInt

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

type MutationRegistrar

type MutationRegistrar struct {
	Kind   flux.OperationKind
	Args   map[string]semantic.PolyType
	Create flux.CreateOperationSpec
	New    flux.NewOperationSpec
}

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 PercentileAgg

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

func (*PercentileAgg) Copy

func (a *PercentileAgg) Copy() *PercentileAgg

func (*PercentileAgg) DoFloat

func (a *PercentileAgg) DoFloat(vs *array.Float64)

func (*PercentileAgg) IsNull

func (a *PercentileAgg) IsNull() bool

func (*PercentileAgg) NewBoolAgg

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

func (*PercentileAgg) NewFloatAgg

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

func (*PercentileAgg) NewIntAgg

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

func (*PercentileAgg) NewStringAgg

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

func (*PercentileAgg) NewUIntAgg

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

func (*PercentileAgg) Type

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

func (*PercentileAgg) ValueFloat

func (a *PercentileAgg) ValueFloat() float64

type PercentileOpSpec

type PercentileOpSpec struct {
	Percentile  float64 `json:"percentile"`
	Compression float64 `json:"compression"`
	Method      string  `json:"method"`
	// percentile is either an aggregate, or a selector based on the options
	execute.AggregateConfig
	execute.SelectorConfig
}

func (*PercentileOpSpec) Kind

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
}

func (*PivotProcedureSpec) Copy

func (*PivotProcedureSpec) Kind

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) TimeBounds

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

TimeBounds implements plan.BoundsAwareProcedureSpec

type RemoveTrivialFilterRule added in v0.15.0

type RemoveTrivialFilterRule struct{}

RemoveTrivialFilterRule removes Filter nodes whose predicate always evaluates to true.

func (RemoveTrivialFilterRule) Name added in v0.15.0

func (RemoveTrivialFilterRule) Pattern added in v0.15.0

func (RemoveTrivialFilterRule) Rewrite added in v0.15.0

func (RemoveTrivialFilterRule) Rewrite(filterNode plan.PlanNode) (plan.PlanNode, bool, error)

type RenameMutator

type RenameMutator struct {
	Columns   map[string]string
	Fn        compiler.Func
	Input     values.Object
	ParamName string
}

func NewRenameMutator

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

func (*RenameMutator) Mutate

func (m *RenameMutator) Mutate(ctx *BuilderContext) error

type RenameOpSpec

type RenameOpSpec struct {
	Columns map[string]string            `json:"columns"`
	Fn      *semantic.FunctionExpression `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() (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

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.Float64) []int

func (*SampleSelector) DoInt

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

func (*SampleSelector) DoString

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

func (*SampleSelector) DoUInt

func (s *SampleSelector) DoUInt(vs *array.Uint64) []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) NewUIntSelector

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

type SchemaMutation

type SchemaMutation interface {
	Mutator() (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 *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:"shift"`
	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

type SkewAgg

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

func (*SkewAgg) DoFloat

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

func (*SkewAgg) DoInt

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

func (*SkewAgg) DoUInt

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

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.AggregateConfig
}

func (*SkewOpSpec) Kind

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

type SkewProcedureSpec

type SkewProcedureSpec struct {
	execute.AggregateConfig
}

func (*SkewProcedureSpec) Copy

func (*SkewProcedureSpec) Kind

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

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.Float64)

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.Int64)

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.AggregateConfig
}

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.AggregateConfig
}

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

type SpreadUIntAgg

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

func (*SpreadUIntAgg) DoUInt

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

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             *semantic.FunctionExpression `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 *semantic.FunctionExpression
	CountColumn,
	DurationColumn string
	DurationUnit flux.Duration
	TimeCol      string
}

func (*StateTrackingProcedureSpec) Copy

func (*StateTrackingProcedureSpec) Kind

type StddevAgg

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

func (*StddevAgg) DoFloat

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

func (*StddevAgg) DoInt

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

func (*StddevAgg) DoUInt

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

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 {
	execute.AggregateConfig
}

func (*StddevOpSpec) Kind

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

type StddevProcedureSpec

type StddevProcedureSpec struct {
	execute.AggregateConfig
}

func (*StddevProcedureSpec) Copy

func (*StddevProcedureSpec) Kind

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.Float64)

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.Int64)

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.AggregateConfig
}

func (*SumOpSpec) Kind

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

type SumProcedureSpec

type SumProcedureSpec struct {
	execute.AggregateConfig
}

func (*SumProcedureSpec) AggregateMethod

func (s *SumProcedureSpec) AggregateMethod() string

func (*SumProcedureSpec) Copy

func (*SumProcedureSpec) Kind

func (*SumProcedureSpec) ReAggregateSpec

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

type SumUIntAgg

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

func (*SumUIntAgg) DoUInt

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

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 TDigestPercentileProcedureSpec

type TDigestPercentileProcedureSpec struct {
	Percentile  float64 `json:"percentile"`
	Compression float64 `json:"compression"`
	execute.AggregateConfig
}

func (*TDigestPercentileProcedureSpec) Copy

func (*TDigestPercentileProcedureSpec) Kind

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

type WindowOpSpec

type WindowOpSpec struct {
	Every       flux.Duration    `json:"every"`
	Period      flux.Duration    `json:"period"`
	Start       flux.Time        `json:"start"`
	Round       flux.Duration    `json:"round"`
	Triggering  flux.TriggerSpec `json:"triggering"`
	TimeColumn  string           `json:"timeColumn"`
	StopColumn  string           `json:"stopColumn"`
	StartColumn string           `json:"startColumn"`
	CreateEmpty bool             `json:"createEmpty"`
}

func (*WindowOpSpec) Kind

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

type WindowProcedureSpec

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

func (*WindowProcedureSpec) Copy

func (*WindowProcedureSpec) Kind

func (*WindowProcedureSpec) TriggerSpec

func (s *WindowProcedureSpec) TriggerSpec() flux.TriggerSpec

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

Jump to

Keyboard shortcuts

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