Documentation
¶
Index ¶
- Variables
- type Config
- type DataobjSectionDescriptor
- type Metastore
- type ObjectMetastore
- func (m *ObjectMetastore) DataObjects(ctx context.Context, start, end time.Time, _ ...*labels.Matcher) ([]string, error)
- func (m *ObjectMetastore) Labels(ctx context.Context, start, end time.Time, matchers ...*labels.Matcher) ([]string, error)
- func (m *ObjectMetastore) Sections(ctx context.Context, start, end time.Time, matchers []*labels.Matcher, ...) ([]*DataobjSectionDescriptor, error)
- func (m *ObjectMetastore) StreamIDs(ctx context.Context, start, end time.Time, matchers ...*labels.Matcher) ([]string, [][]int64, []int, error)
- func (m *ObjectMetastore) Streams(ctx context.Context, start, end time.Time, matchers ...*labels.Matcher) ([]*labels.Labels, error)
- func (m *ObjectMetastore) Values(ctx context.Context, start, end time.Time, matchers ...*labels.Matcher) ([]string, error)
- type ObjectWrittenEvent
- func (*ObjectWrittenEvent) Descriptor() ([]byte, []int)
- func (this *ObjectWrittenEvent) Equal(that interface{}) bool
- func (m *ObjectWrittenEvent) GetObjectPath() string
- func (m *ObjectWrittenEvent) GetWriteTime() string
- func (this *ObjectWrittenEvent) GoString() string
- func (m *ObjectWrittenEvent) Marshal() (dAtA []byte, err error)
- func (m *ObjectWrittenEvent) MarshalTo(dAtA []byte) (int, error)
- func (m *ObjectWrittenEvent) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*ObjectWrittenEvent) ProtoMessage()
- func (m *ObjectWrittenEvent) Reset()
- func (m *ObjectWrittenEvent) Size() (n int)
- func (this *ObjectWrittenEvent) String() string
- func (m *ObjectWrittenEvent) Unmarshal(dAtA []byte) error
- func (m *ObjectWrittenEvent) XXX_DiscardUnknown()
- func (m *ObjectWrittenEvent) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *ObjectWrittenEvent) XXX_Merge(src proto.Message)
- func (m *ObjectWrittenEvent) XXX_Size() int
- func (m *ObjectWrittenEvent) XXX_Unmarshal(b []byte) error
- type SectionKey
- type TableOfContentsWriter
Constants ¶
This section is empty.
Variables ¶
var ( ErrInvalidLengthMetastore = fmt.Errorf("proto: negative length found during unmarshaling") ErrIntOverflowMetastore = fmt.Errorf("proto: integer overflow") )
Functions ¶
This section is empty.
Types ¶
type Config ¶ added in v3.6.0
type Config struct {
IndexStoragePrefix string `yaml:"index_storage_prefix" experimental:"true"`
PartitionRatio int `yaml:"partition_ratio" experimental:"true"`
}
Config is the configuration block for the metastore settings.
func (*Config) RegisterFlags ¶ added in v3.6.0
RegisterFlags registers the flags for the metastore settings.
type DataobjSectionDescriptor ¶ added in v3.6.0
type DataobjSectionDescriptor struct {
SectionKey
StreamIDs []int64
RowCount int
Size int64
Start time.Time
End time.Time
}
func NewSectionDescriptor ¶ added in v3.6.0
func NewSectionDescriptor(pointer pointers.SectionPointer) *DataobjSectionDescriptor
func (*DataobjSectionDescriptor) Merge ¶ added in v3.6.0
func (d *DataobjSectionDescriptor) Merge(pointer pointers.SectionPointer)
type Metastore ¶
type Metastore interface {
// Streams returns all streams corresponding to the given matchers between [start,end]
Streams(ctx context.Context, start, end time.Time, matchers ...*labels.Matcher) ([]*labels.Labels, error)
// DataObjects returns paths to all matching the given matchers between [start,end]
// TODO(chaudum); The comment is not correct, because the implementation does not filter by matchers, only by [start, end].
DataObjects(ctx context.Context, start, end time.Time, matchers ...*labels.Matcher) ([]string, error)
// StreamsIDs returns object store paths and stream IDs for all matching objects for the given matchers between [start,end]
StreamIDs(ctx context.Context, start, end time.Time, matchers ...*labels.Matcher) ([]string, [][]int64, []int, error)
// Sections returns a list of SectionDescriptors, including metadata (stream IDs, start & end times, bytes), for the given matchers & predicates between [start,end]
Sections(ctx context.Context, start, end time.Time, matchers []*labels.Matcher, predicates []*labels.Matcher) ([]*DataobjSectionDescriptor, error)
// Labels returns all possible labels from matching streams between [start,end]
Labels(ctx context.Context, start, end time.Time, matchers ...*labels.Matcher) ([]string, error) // Used to get possible labels for a given stream
// Values returns all possible values for the given label matchers between [start,end]
Values(ctx context.Context, start, end time.Time, matchers ...*labels.Matcher) ([]string, error) // Used to get all values for a given set of label matchers
}
type ObjectMetastore ¶
type ObjectMetastore struct {
// contains filtered or unexported fields
}
func NewObjectMetastore ¶
func NewObjectMetastore(bucket objstore.Bucket, logger log.Logger, reg prometheus.Registerer) *ObjectMetastore
func (*ObjectMetastore) DataObjects ¶
type ObjectWrittenEvent ¶ added in v3.6.0
type ObjectWrittenEvent struct {
ObjectPath string `protobuf:"bytes,2,opt,name=objectPath,proto3" json:"objectPath,omitempty"`
WriteTime string `protobuf:"bytes,3,opt,name=writeTime,proto3" json:"writeTime,omitempty"`
}
ColumnInfo describes an individual column within a data set.
func (*ObjectWrittenEvent) Descriptor ¶ added in v3.6.0
func (*ObjectWrittenEvent) Descriptor() ([]byte, []int)
func (*ObjectWrittenEvent) Equal ¶ added in v3.6.0
func (this *ObjectWrittenEvent) Equal(that interface{}) bool
func (*ObjectWrittenEvent) GetObjectPath ¶ added in v3.6.0
func (m *ObjectWrittenEvent) GetObjectPath() string
func (*ObjectWrittenEvent) GetWriteTime ¶ added in v3.6.0
func (m *ObjectWrittenEvent) GetWriteTime() string
func (*ObjectWrittenEvent) GoString ¶ added in v3.6.0
func (this *ObjectWrittenEvent) GoString() string
func (*ObjectWrittenEvent) Marshal ¶ added in v3.6.0
func (m *ObjectWrittenEvent) Marshal() (dAtA []byte, err error)
func (*ObjectWrittenEvent) MarshalTo ¶ added in v3.6.0
func (m *ObjectWrittenEvent) MarshalTo(dAtA []byte) (int, error)
func (*ObjectWrittenEvent) MarshalToSizedBuffer ¶ added in v3.6.0
func (m *ObjectWrittenEvent) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*ObjectWrittenEvent) ProtoMessage ¶ added in v3.6.0
func (*ObjectWrittenEvent) ProtoMessage()
func (*ObjectWrittenEvent) Reset ¶ added in v3.6.0
func (m *ObjectWrittenEvent) Reset()
func (*ObjectWrittenEvent) Size ¶ added in v3.6.0
func (m *ObjectWrittenEvent) Size() (n int)
func (*ObjectWrittenEvent) String ¶ added in v3.6.0
func (this *ObjectWrittenEvent) String() string
func (*ObjectWrittenEvent) Unmarshal ¶ added in v3.6.0
func (m *ObjectWrittenEvent) Unmarshal(dAtA []byte) error
func (*ObjectWrittenEvent) XXX_DiscardUnknown ¶ added in v3.6.0
func (m *ObjectWrittenEvent) XXX_DiscardUnknown()
func (*ObjectWrittenEvent) XXX_Marshal ¶ added in v3.6.0
func (m *ObjectWrittenEvent) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*ObjectWrittenEvent) XXX_Merge ¶ added in v3.6.0
func (m *ObjectWrittenEvent) XXX_Merge(src proto.Message)
func (*ObjectWrittenEvent) XXX_Size ¶ added in v3.6.0
func (m *ObjectWrittenEvent) XXX_Size() int
func (*ObjectWrittenEvent) XXX_Unmarshal ¶ added in v3.6.0
func (m *ObjectWrittenEvent) XXX_Unmarshal(b []byte) error
type SectionKey ¶ added in v3.6.0
type TableOfContentsWriter ¶ added in v3.6.0
type TableOfContentsWriter struct {
// contains filtered or unexported fields
}
The TableOfContents (ToC) writer manages the metastore's Table of Contents files, which are a list of other data objects in storage for a particular time range. The Table of Contents files are used to look up other objects based on a time range, either index files or the log objects themselves. All entries are expected to have an applicable time window.
func NewTableOfContentsWriter ¶ added in v3.6.0
func NewTableOfContentsWriter(bucket objstore.Bucket, logger log.Logger) *TableOfContentsWriter
NewTableOfContentsWriter creates a new Writer for adding entries to the metastore's Table of Contents files.
func (*TableOfContentsWriter) RegisterMetrics ¶ added in v3.6.0
func (m *TableOfContentsWriter) RegisterMetrics(reg prometheus.Registerer) error
func (*TableOfContentsWriter) UnregisterMetrics ¶ added in v3.6.0
func (m *TableOfContentsWriter) UnregisterMetrics(reg prometheus.Registerer)
func (*TableOfContentsWriter) WriteEntry ¶ added in v3.6.0
func (m *TableOfContentsWriter) WriteEntry(ctx context.Context, dataobjPath string, tenantTimeRanges []multitenancy.TimeRange) error
WriteEntry adds the provided path to the Table of Contents file. The min/max timestamps are stored as metastore for the new entry can be accessed by time.