Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var SeriesForwardMerger kv.MergerType = "SeriesForwardMerger"
var SeriesInvertedMerger kv.MergerType = "SeriesInvertedMerger"
Functions ¶
func NewForwardMerger ¶
NewForwardMerger creates a forward merger
Types ¶
type ForwardFlusher ¶
type ForwardFlusher interface { // PrepareTagKey should be called firstly PrepareTagKey(tagKeyID uint32) // FlushForwardIndex flushes tag value ids by bitmap container FlushForwardIndex(tagValueIDs []uint32) error // CommitTagKey ends writing series ids in tag index table. CommitTagKey(seriesIDs *roaring.Bitmap) error // Closer closes the writer, this will be called after writing all tag keys. io.Closer }
ForwardFlusher represents forward index invertedFlusher which flushes series id => tag value id mapping The layout is available in `tsdb/doc.go`
func NewForwardFlusher ¶
func NewForwardFlusher(kvFlusher kv.Flusher) (ForwardFlusher, error)
NewForwardFlusher creates a forward index invertedFlusher
type ForwardReader ¶
type ForwardReader interface { flow.Grouping // GetSeriesIDsForTagKeyID returns series ids for spec tag key id of metric. GetSeriesIDsForTagKeyID(tagKeyID tag.KeyID) (*roaring.Bitmap, error) }
ForwardReader represents read forward index data(series id=>tag value id)
func NewForwardReader ¶
func NewForwardReader(readers []table.Reader) ForwardReader
NewForwardReader creates a Reader for reading forward index
type InvertedFlusher ¶
type InvertedFlusher interface { // PrepareTagKey should be called firstly PrepareTagKey(tagKeyID uint32) // FlushInvertedIndex writes tag value id->series ids inverted index data, // !!!!! NOTICE: need add tag value id in order. FlushInvertedIndex(tagValueID uint32, seriesIDs *roaring.Bitmap) error // CommitTagKey ends writing tag inverted index data in index table. CommitTagKey() error // Closer closes the writer, this will be called after writing all tag keys. io.Closer }
InvertedFlusher is a wrapper of kv.Builder, provides the ability to build a inverted index table. The layout is available in `tsdb/doc.go`
func NewInvertedFlusher ¶
func NewInvertedFlusher(kvFlusher kv.Flusher) (InvertedFlusher, error)
NewInvertedFlusher returns a new InvertedFlusher
type InvertedReader ¶
type InvertedReader interface { // GetSeriesIDsByTagValueIDs finds series ids by tag key id and tag value ids GetSeriesIDsByTagValueIDs(tagKeyID tag.KeyID, tagValueIDs *roaring.Bitmap) (*roaring.Bitmap, error) }
InvertedReader reads seriesID bitmap from series-index-table
func NewInvertedReader ¶
func NewInvertedReader(readers []table.Reader) InvertedReader
NewInvertedReader creates a InvertedReader for reading inverted index
type TagForwardReader ¶
type TagForwardReader interface { flow.GroupingScanner }
TagForwardReader represents the forward index inverterReader for one tag(series id=>tag value id)
func NewTagForwardReader ¶
func NewTagForwardReader(buf []byte) (TagForwardReader, error)
NewTagForwardReader creates a forward index inverterReader