index

package
v2.5.2 Latest Latest
Warning

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

Go to latest
Published: Apr 27, 2022 License: AGPL-3.0 Imports: 15 Imported by: 0

Documentation

Overview

originally from https://github.com/cortexproject/cortex/blob/868898a2921c662dcd4f90683e8b95c927a8edd8/pkg/ingester/index/index.go but modified to support sharding queries.

Index

Constants

View Source
const DefaultIndexShards = 32

Variables

View Source
var ErrInvalidShardQuery = errors.New("incompatible index shard query")

Functions

This section is empty.

Types

type InvertedIndex

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

InvertedIndex implements a in-memory inverted index from label pairs to fingerprints. It is sharded to reduce lock contention on writes.

func NewWithShards

func NewWithShards(totalShards uint32) *InvertedIndex

func (*InvertedIndex) Add

Add a fingerprint under the specified labels. NOTE: memory for `labels` is unsafe; anything retained beyond the life of this function must be copied

func (*InvertedIndex) Delete

func (ii *InvertedIndex) Delete(labels labels.Labels, fp model.Fingerprint)

Delete a fingerprint with the given label pairs.

func (*InvertedIndex) LabelNames

func (ii *InvertedIndex) LabelNames(shard *astmapper.ShardAnnotation) ([]string, error)

LabelNames returns all label names.

func (*InvertedIndex) LabelValues

func (ii *InvertedIndex) LabelValues(name string, shard *astmapper.ShardAnnotation) ([]string, error)

LabelValues returns the values for the given label.

func (*InvertedIndex) Lookup

func (ii *InvertedIndex) Lookup(matchers []*labels.Matcher, shard *astmapper.ShardAnnotation) ([]model.Fingerprint, error)

Lookup all fingerprints for the provided matchers.

Jump to

Keyboard shortcuts

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