lsm

package
v0.0.52 Latest Latest
Warning

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

Go to latest
Published: Feb 7, 2024 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ScanTimestamp

func ScanTimestamp(r arrow.Record, timestampColumn int, start, end int64) *roaring.Bitmap

Types

type Node

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

func (*Node) Iterate

func (n *Node) Iterate(f func(*Node) bool)

func (*Node) Prepend

func (n *Node) Prepend(part *Part) *Node

type Option

type Option func(*Options)

func WithCompactSize

func WithCompactSize(size uint64) Option

func WithTTL

func WithTTL(ttl time.Duration) Option

type Options

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

func DefaultLSMOptions

func DefaultLSMOptions() Options

type Part

type Part struct {
	ID     ulid.ULID
	Record arrow.Record
	Index  index.Full
	Size   uint64
	Min    int64
	Max    int64
}

func NewPart

func NewPart(r arrow.Record, idx index.Full) *Part

type ScanCallback

type ScanCallback func(context.Context, arrow.Record) error

type Tree

type Tree[T any] struct {
	// contains filtered or unexported fields
}

func NewTree

func NewTree[T any](mem memory.Allocator, resource string, storage db.Storage, indexer index.Index, primary index.Primary, opts ...Option) *Tree[T]

func (*Tree[T]) Add

func (lsm *Tree[T]) Add(r arrow.Record) error

func (*Tree[T]) Compact added in v0.0.51

func (lsm *Tree[T]) Compact()

func (*Tree[T]) Scan

func (lsm *Tree[T]) Scan(
	ctx context.Context,
	start, end int64,
	fs *v1.Filters,
) (arrow.Record, error)

func (*Tree[T]) Start added in v0.0.51

func (lsm *Tree[T]) Start(ctx context.Context)

Jump to

Keyboard shortcuts

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