Documentation ¶
Index ¶
- Constants
- func ReadFilterSource(id execute.DatasetID, r Reader, readSpec ReadFilterSpec, ...) execute.Source
- func ReadGroupSource(id execute.DatasetID, r Reader, readSpec ReadGroupSpec, ...) execute.Source
- func ReadTagKeysSource(id execute.DatasetID, r Reader, readSpec ReadTagKeysSpec, ...) execute.Source
- func ReadTagValuesSource(id execute.DatasetID, r Reader, readSpec ReadTagValuesSpec, ...) execute.Source
- type Authorizer
- type BucketsDecoder
- type Dependencies
- type FromDependencies
- type FromOpSpec
- type FromProcedureSpec
- type GroupMode
- type MetaClient
- type PushDownFilterRule
- type PushDownGroupRule
- type PushDownRangeRule
- type PushDownReadTagKeysRule
- type PushDownReadTagValuesRule
- type ReadFilterSpec
- type ReadGroupPhysSpec
- type ReadGroupSpec
- type ReadRangePhysSpec
- func (s *ReadRangePhysSpec) Copy() plan.ProcedureSpec
- func (s *ReadRangePhysSpec) Kind() plan.ProcedureKind
- func (s *ReadRangePhysSpec) LookupDatabase(ctx context.Context, deps StorageDependencies, a execute.Administration) (string, string, error)
- func (s *ReadRangePhysSpec) TimeBounds(predecessorBounds *plan.Bounds) *plan.Bounds
- type ReadTagKeysPhysSpec
- type ReadTagKeysSpec
- type ReadTagValuesPhysSpec
- type ReadTagValuesSpec
- type Reader
- type Source
- type StorageDependencies
- type TableIterator
Constants ¶
const ( ReadRangePhysKind = "ReadRangePhysKind" ReadGroupPhysKind = "ReadGroupPhysKind" ReadTagKeysPhysKind = "ReadTagKeysPhysKind" ReadTagValuesPhysKind = "ReadTagValuesPhysKind" )
const FromKind = "influxDBFrom"
Variables ¶
This section is empty.
Functions ¶
func ReadFilterSource ¶ added in v1.7.8
func ReadFilterSource(id execute.DatasetID, r Reader, readSpec ReadFilterSpec, a execute.Administration) execute.Source
func ReadGroupSource ¶ added in v1.7.8
func ReadGroupSource(id execute.DatasetID, r Reader, readSpec ReadGroupSpec, a execute.Administration) execute.Source
func ReadTagKeysSource ¶ added in v1.7.8
func ReadTagKeysSource(id execute.DatasetID, r Reader, readSpec ReadTagKeysSpec, a execute.Administration) execute.Source
func ReadTagValuesSource ¶ added in v1.7.8
func ReadTagValuesSource(id execute.DatasetID, r Reader, readSpec ReadTagValuesSpec, a execute.Administration) execute.Source
Types ¶
type Authorizer ¶
type BucketsDecoder ¶
type BucketsDecoder struct {
// contains filtered or unexported fields
}
func (*BucketsDecoder) Close ¶
func (bd *BucketsDecoder) Close() error
type Dependencies ¶
type Dependencies struct { StorageDeps StorageDependencies FluxDeps flux.Dependencies }
func NewDependencies ¶ added in v1.7.9
func NewDependencies( mc MetaClient, reader Reader, auth Authorizer, authEnabled bool, ) (Dependencies, error)
type FromDependencies ¶ added in v1.7.9
type FromDependencies struct { Reader Reader MetaClient MetaClient Authorizer Authorizer AuthEnabled bool }
func (FromDependencies) Validate ¶ added in v1.7.9
func (d FromDependencies) Validate() error
type FromOpSpec ¶
type FromOpSpec struct { Bucket string `json:"bucket,omitempty"` BucketID string `json:"bucketID,omitempty"` }
func (*FromOpSpec) Kind ¶
func (s *FromOpSpec) Kind() flux.OperationKind
type FromProcedureSpec ¶
func (*FromProcedureSpec) Copy ¶
func (s *FromProcedureSpec) Copy() plan.ProcedureSpec
func (*FromProcedureSpec) Kind ¶
func (s *FromProcedureSpec) Kind() plan.ProcedureKind
func (*FromProcedureSpec) PostPhysicalValidate ¶
func (s *FromProcedureSpec) PostPhysicalValidate(id plan.NodeID) error
type GroupMode ¶
type GroupMode int
func ToGroupMode ¶
ToGroupMode accepts the group mode from Flux and produces the appropriate storage group mode.
type MetaClient ¶
type MetaClient interface { Databases() []meta.DatabaseInfo Database(name string) *meta.DatabaseInfo }
type PushDownFilterRule ¶ added in v1.7.8
type PushDownFilterRule struct{}
PushDownFilterRule is a rule that pushes filters into from procedures to be evaluated in the storage layer. This rule is likely to be replaced by a more generic rule when we have a better framework for pushing filters, etc into sources.
func (PushDownFilterRule) Name ¶ added in v1.7.8
func (PushDownFilterRule) Name() string
func (PushDownFilterRule) Pattern ¶ added in v1.7.8
func (PushDownFilterRule) Pattern() plan.Pattern
type PushDownGroupRule ¶ added in v1.7.8
type PushDownGroupRule struct{}
PushDownGroupRule pushes down a group operation to storage
func (PushDownGroupRule) Name ¶ added in v1.7.8
func (rule PushDownGroupRule) Name() string
func (PushDownGroupRule) Pattern ¶ added in v1.7.8
func (rule PushDownGroupRule) Pattern() plan.Pattern
type PushDownRangeRule ¶ added in v1.7.8
type PushDownRangeRule struct{}
PushDownRangeRule pushes down a range filter to storage
func (PushDownRangeRule) Name ¶ added in v1.7.8
func (rule PushDownRangeRule) Name() string
func (PushDownRangeRule) Pattern ¶ added in v1.7.8
func (rule PushDownRangeRule) Pattern() plan.Pattern
Pattern matches 'from |> range'
type PushDownReadTagKeysRule ¶ added in v1.7.8
type PushDownReadTagKeysRule struct{}
PushDownReadTagKeysRule matches 'ReadRange |> keys() |> keep() |> distinct()'. The 'from()' must have already been merged with 'range' and, optionally, may have been merged with 'filter'. If any other properties have been set on the from procedure, this rule will not rewrite anything.
func (PushDownReadTagKeysRule) Name ¶ added in v1.7.8
func (rule PushDownReadTagKeysRule) Name() string
func (PushDownReadTagKeysRule) Pattern ¶ added in v1.7.8
func (rule PushDownReadTagKeysRule) Pattern() plan.Pattern
type PushDownReadTagValuesRule ¶ added in v1.7.8
type PushDownReadTagValuesRule struct{}
PushDownReadTagValuesRule matches 'ReadRange |> keep(columns: [tag]) |> group() |> distinct(column: tag)'. The 'from()' must have already been merged with 'range' and, optionally, may have been merged with 'filter'. If any other properties have been set on the from procedure, this rule will not rewrite anything.
func (PushDownReadTagValuesRule) Name ¶ added in v1.7.8
func (rule PushDownReadTagValuesRule) Name() string
func (PushDownReadTagValuesRule) Pattern ¶ added in v1.7.8
func (rule PushDownReadTagValuesRule) Pattern() plan.Pattern
type ReadFilterSpec ¶ added in v1.7.8
type ReadGroupPhysSpec ¶ added in v1.7.8
type ReadGroupPhysSpec struct { plan.DefaultCost ReadRangePhysSpec GroupMode flux.GroupMode GroupKeys []string AggregateMethod string }
func (*ReadGroupPhysSpec) Copy ¶ added in v1.7.8
func (s *ReadGroupPhysSpec) Copy() plan.ProcedureSpec
func (*ReadGroupPhysSpec) Kind ¶ added in v1.7.8
func (s *ReadGroupPhysSpec) Kind() plan.ProcedureKind
type ReadGroupSpec ¶ added in v1.7.8
type ReadGroupSpec struct { ReadFilterSpec GroupMode GroupMode GroupKeys []string AggregateMethod string }
type ReadRangePhysSpec ¶ added in v1.7.8
type ReadRangePhysSpec struct { plan.DefaultCost Bucket string BucketID string // FilterSet is set to true if there is a filter. FilterSet bool // Filter is the filter to use when calling into // storage. It must be possible to push down this // filter. Filter *semantic.FunctionExpression Bounds flux.Bounds }
func (*ReadRangePhysSpec) Copy ¶ added in v1.7.8
func (s *ReadRangePhysSpec) Copy() plan.ProcedureSpec
func (*ReadRangePhysSpec) Kind ¶ added in v1.7.8
func (s *ReadRangePhysSpec) Kind() plan.ProcedureKind
func (*ReadRangePhysSpec) LookupDatabase ¶ added in v1.7.8
func (s *ReadRangePhysSpec) LookupDatabase(ctx context.Context, deps StorageDependencies, a execute.Administration) (string, string, error)
func (*ReadRangePhysSpec) TimeBounds ¶ added in v1.7.8
func (s *ReadRangePhysSpec) TimeBounds(predecessorBounds *plan.Bounds) *plan.Bounds
TimeBounds implements plan.BoundsAwareProcedureSpec.
type ReadTagKeysPhysSpec ¶ added in v1.7.8
type ReadTagKeysPhysSpec struct {
ReadRangePhysSpec
}
func (*ReadTagKeysPhysSpec) Copy ¶ added in v1.7.8
func (s *ReadTagKeysPhysSpec) Copy() plan.ProcedureSpec
func (*ReadTagKeysPhysSpec) Kind ¶ added in v1.7.8
func (s *ReadTagKeysPhysSpec) Kind() plan.ProcedureKind
type ReadTagKeysSpec ¶ added in v1.7.8
type ReadTagKeysSpec struct {
ReadFilterSpec
}
type ReadTagValuesPhysSpec ¶ added in v1.7.8
type ReadTagValuesPhysSpec struct { ReadRangePhysSpec TagKey string }
func (*ReadTagValuesPhysSpec) Copy ¶ added in v1.7.8
func (s *ReadTagValuesPhysSpec) Copy() plan.ProcedureSpec
func (*ReadTagValuesPhysSpec) Kind ¶ added in v1.7.8
func (s *ReadTagValuesPhysSpec) Kind() plan.ProcedureKind
type ReadTagValuesSpec ¶ added in v1.7.8
type ReadTagValuesSpec struct { ReadFilterSpec TagKey string }
type Reader ¶
type Reader interface { ReadFilter(ctx context.Context, spec ReadFilterSpec, alloc *memory.Allocator) (TableIterator, error) ReadGroup(ctx context.Context, spec ReadGroupSpec, alloc *memory.Allocator) (TableIterator, error) ReadTagKeys(ctx context.Context, spec ReadTagKeysSpec, alloc *memory.Allocator) (TableIterator, error) ReadTagValues(ctx context.Context, spec ReadTagValuesSpec, alloc *memory.Allocator) (TableIterator, error) Close() }
type Source ¶ added in v1.7.8
type Source struct {
// contains filtered or unexported fields
}
func (*Source) AddTransformation ¶ added in v1.7.8
func (s *Source) AddTransformation(t execute.Transformation)
type StorageDependencies ¶ added in v1.7.9
type StorageDependencies struct { Reader Reader MetaClient MetaClient Authorizer Authorizer AuthEnabled bool }
func GetStorageDependencies ¶ added in v1.7.9
func GetStorageDependencies(ctx context.Context) StorageDependencies
func (StorageDependencies) Inject ¶ added in v1.7.9
func (d StorageDependencies) Inject(ctx context.Context) context.Context
func (StorageDependencies) Validate ¶ added in v1.7.9
func (d StorageDependencies) Validate() error
type TableIterator ¶ added in v1.7.8
type TableIterator interface { flux.TableIterator Statistics() cursors.CursorStats }
TableIterator is a table iterator that also keeps track of cursor statistics from the storage engine.