storage

package
v1.10.0 Latest Latest
Warning

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

Go to latest
Published: Aug 2, 2022 License: MIT Imports: 20 Imported by: 19

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrMissingReadSource = errors.New("missing ReadSource")
)
View Source
var File_source_proto protoreflect.FileDescriptor

Functions

func HasFieldKeyOrValue

func HasFieldKeyOrValue(expr influxql.Expr) (bool, bool)

func HasSingleMeasurementNoOR added in v1.6.1

func HasSingleMeasurementNoOR(expr influxql.Expr) (string, bool)

HasSingleMeasurementNoOR determines if an index optimisation is available.

Typically the read service will use the query engine to retrieve all field keys for all measurements that match the expression, which can be very inefficient if it can be proved that only one measurement matches the expression.

This condition is determined when the following is true:

  • there is only one occurrence of the tag key `_measurement`.
  • there are no OR operators in the expression tree.
  • the operator for the `_measurement` binary expression is ==.

func NewContextWithReadOptions added in v1.7.2

func NewContextWithReadOptions(ctx context.Context, opts *ReadOptions) context.Context

NewContextWithRequestOptions returns a new Context with nodeID added.

func RewriteExprRemoveFieldKeyAndValue

func RewriteExprRemoveFieldKeyAndValue(expr influxql.Expr) influxql.Expr

Types

type MeasurementNamesRequest added in v1.7.8

type MeasurementNamesRequest struct {
	MeasurementsSource *anypb.Any
	Predicate          *datatypes.Predicate
}

type MetaClient added in v1.7.0

type MetaClient interface {
	Database(name string) *meta.DatabaseInfo
	ShardGroupsByTimeRange(database, policy string, min, max time.Time) (a []meta.ShardGroupInfo, err error)
}

type ReadOptions added in v1.7.2

type ReadOptions struct {
	NodeID uint64
}

ReadOptions are additional options that may be passed with context.Context to configure the behavior of a storage read request.

func ReadOptionsFromContext added in v1.7.2

func ReadOptionsFromContext(ctx context.Context) *ReadOptions

ReadOptionsFromContext returns the ReadOptions associated with the context or nil if no additional options have been specified.

type ReadSource added in v1.7.0

type ReadSource struct {

	// Database identifies which database to query.
	Database string `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
	// RetentionPolicy identifies which retention policy to query.
	RetentionPolicy string `protobuf:"bytes,2,opt,name=RetentionPolicy,proto3" json:"RetentionPolicy,omitempty"`
	// contains filtered or unexported fields
}

func GetReadSource added in v1.7.2

func GetReadSource(any *anypb.Any) (*ReadSource, error)

GetReadSource will attempt to unmarshal a ReadSource from the ReadRequest or return an error if no valid resource is present.

func (*ReadSource) Descriptor deprecated added in v1.7.0

func (*ReadSource) Descriptor() ([]byte, []int)

Deprecated: Use ReadSource.ProtoReflect.Descriptor instead.

func (*ReadSource) GetDatabase added in v1.9.6

func (x *ReadSource) GetDatabase() string

func (*ReadSource) GetRetentionPolicy added in v1.9.6

func (x *ReadSource) GetRetentionPolicy() string

func (*ReadSource) ProtoMessage added in v1.7.0

func (*ReadSource) ProtoMessage()

func (*ReadSource) ProtoReflect added in v1.9.6

func (x *ReadSource) ProtoReflect() protoreflect.Message

func (*ReadSource) Reset added in v1.7.0

func (x *ReadSource) Reset()

func (*ReadSource) String added in v1.7.0

func (x *ReadSource) String() string

type Store

type Store struct {
	TSDBStore  *tsdb.Store
	MetaClient MetaClient
	Logger     *zap.Logger
}

func NewStore

func NewStore(store *tsdb.Store, metaClient MetaClient) *Store

func (*Store) Delete added in v1.10.0

func (s *Store) Delete(database string, sources []influxql.Source, condition influxql.Expr) error

func (*Store) DeleteRetentionPolicy added in v1.10.0

func (s *Store) DeleteRetentionPolicy(database, name string) error

func (*Store) GetSource added in v1.7.0

func (s *Store) GetSource(db, rp string) proto.Message

func (*Store) MeasurementNames added in v1.7.8

func (s *Store) MeasurementNames(ctx context.Context, req *MeasurementNamesRequest) (cursors.StringIterator, error)

func (*Store) ReadFilter added in v1.7.8

func (s *Store) ReadFilter(ctx context.Context, req *datatypes.ReadFilterRequest) (reads.ResultSet, error)

func (*Store) ReadFilterLimit added in v1.9.6

func (s *Store) ReadFilterLimit(ctx context.Context, req *datatypes.ReadFilterRequest, limitShardIDs []uint64) (reads.ResultSet, error)

func (*Store) ReadGroup added in v1.7.8

func (*Store) ReadGroupLimit added in v1.9.6

func (s *Store) ReadGroupLimit(ctx context.Context, req *datatypes.ReadGroupRequest, limitShardIDs []uint64) (reads.GroupResultSet, error)

func (*Store) TagKeys added in v1.7.8

func (*Store) TagValues added in v1.7.8

func (*Store) WindowAggregate added in v1.9.0

func (s *Store) WindowAggregate(ctx context.Context, req *datatypes.ReadWindowAggregateRequest) (reads.ResultSet, error)

func (*Store) WindowAggregateLimit added in v1.9.6

func (s *Store) WindowAggregateLimit(ctx context.Context, req *datatypes.ReadWindowAggregateRequest, limitShardIDs []uint64) (reads.ResultSet, error)

func (*Store) WithLogger

func (s *Store) WithLogger(log *zap.Logger)

WithLogger sets the logger for the service.

Jump to

Keyboard shortcuts

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