bloomfilter

package
v1.4.2 Latest Latest
Warning

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

Go to latest
Published: Sep 1, 2025 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Overview

Copyright 2023 Huawei Cloud Computing Technologies Co., Ltd.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright 2023 Huawei Cloud Computing Technologies Co., Ltd.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Copyright 2023 Huawei Cloud Computing Technologies Co., Ltd.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Index

Constants

View Source
const (
	VerticalFilterReaderSizeSpan = "vertical_filter_size_span"
	VerticalFilterReaderNumSpan  = "vertical_filter_num_span"
	VerticalFilterReaderDuration = "vertical_filter_duration"
)
View Source
const (
	PIECE_NUM int64 = 128
)

Variables

This section is empty.

Functions

func CreateFilterReader added in v1.4.0

func CreateFilterReader(indexType index.IndexType, path string, obsOpts *obs.ObsOptions, expr influxql.Expr, version uint32, splitMap map[string][]byte, fileName string) (rpn.SKBaseReader, error)

func Hash

func Hash(bytes []byte) uint64

func NewLineFilterIpReader added in v1.4.0

func NewLineFilterIpReader(path string, obsOpts *obs.ObsOptions, expr influxql.Expr, version uint32, splitMap map[string][]byte, fileName string) (rpn.SKBaseReader, error)

func NewLineFilterReaderBase added in v1.4.0

func NewLineFilterReaderBase(path string, obsOpts *obs.ObsOptions, expr influxql.Expr, version uint32, splitMap map[string][]byte, fileName string) (rpn.SKBaseReader, error)

func RegistryFilterReaderCreator added in v1.4.0

func RegistryFilterReaderCreator(indexType index.IndexType, creator FilterReaderCreator) bool

Types

type FilterReader

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

func NewFilterReader

func NewFilterReader(option *obs.ObsOptions, expr influxql.Expr, splitMap map[string][]byte, isCache bool, isStat bool, version uint32, linePath, verticalPath, linFilterName, verticalFilter string) (*FilterReader, error)

func (*FilterReader) Close

func (s *FilterReader) Close()

func (*FilterReader) IsExist

func (s *FilterReader) IsExist(blockId int64, elem *rpn.SKRPNElement) (bool, error)

func (*FilterReader) StartSpan

func (s *FilterReader) StartSpan(span *tracing.Span)

type FilterReaderCreator added in v1.4.0

type FilterReaderCreator func(path string, obsOpts *obs.ObsOptions, expr influxql.Expr, version uint32, splitMap map[string][]byte, fileName string) (rpn.SKBaseReader, error)

func GetFilterReader added in v1.4.0

func GetFilterReader(indexType index.IndexType) (FilterReaderCreator, error)

type FilterReaderFactory added in v1.4.0

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

func GetFilterReaderFactoryInstance added in v1.4.0

func GetFilterReaderFactoryInstance() *FilterReaderFactory

func NewFilterReaderFactory added in v1.4.0

func NewFilterReaderFactory() *FilterReaderFactory

func (*FilterReaderFactory) AddFilterReaderCreator added in v1.4.0

func (r *FilterReaderFactory) AddFilterReaderCreator(indexType index.IndexType, creator FilterReaderCreator)

func (*FilterReaderFactory) FindFilterReaderCreator added in v1.4.0

func (r *FilterReaderFactory) FindFilterReaderCreator(indexType index.IndexType) (FilterReaderCreator, bool)

type LineFilterIpReader added in v1.4.0

type LineFilterIpReader struct {
	FilterReader
	// contains filtered or unexported fields
}

func (*LineFilterIpReader) Close added in v1.4.0

func (s *LineFilterIpReader) Close()

func (*LineFilterIpReader) IsExist added in v1.4.0

func (s *LineFilterIpReader) IsExist(blockId int64, _ *rpn.SKRPNElement) (bool, error)

type LineFilterReader

type LineFilterReader struct {
	FilterReader
	// contains filtered or unexported fields
}

func NewLineFilterReader

func NewLineFilterReader(path string, obsOpts *obs.ObsOptions, expr influxql.Expr, version uint32, splitMap map[string][]byte, fileName string) (*LineFilterReader, error)

func (*LineFilterReader) IsExist

func (s *LineFilterReader) IsExist(blockId int64, elem *rpn.SKRPNElement) (bool, error)

type MultiFieldFilterReader

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

func NewMultiFieldFilterReader

func NewMultiFieldFilterReader(option *obs.ObsOptions, expr []*SKRPNElement, splitMap map[string][]byte, isCache bool, isStat bool, version uint32, linePath, verticalPath, linFilterName, verticalFilter string) (*MultiFieldFilterReader, error)

func (*MultiFieldFilterReader) Close

func (s *MultiFieldFilterReader) Close()

func (*MultiFieldFilterReader) IsExist

func (s *MultiFieldFilterReader) IsExist(blockId int64, elem *rpn.SKRPNElement) (bool, error)

func (*MultiFieldFilterReader) StartSpan

func (s *MultiFieldFilterReader) StartSpan(span *tracing.Span)

type MultiFiledLineFilterReader

type MultiFiledLineFilterReader struct {
	MultiFieldFilterReader
	// contains filtered or unexported fields
}

func NewMultiFiledLineFilterReader

func NewMultiFiledLineFilterReader(path string, obsOpts *obs.ObsOptions, expr []*SKRPNElement, version uint32, splitMap map[string][]byte, fileName string) (*MultiFiledLineFilterReader, error)

func (*MultiFiledLineFilterReader) IsExist

func (s *MultiFiledLineFilterReader) IsExist(blockId int64, elem *rpn.SKRPNElement) (bool, error)

type MultilFieldVerticalFilterReader

type MultilFieldVerticalFilterReader struct {
	MultiFieldFilterReader
	// contains filtered or unexported fields
}

func NewMultiFieldVerticalFilterReader

func NewMultiFieldVerticalFilterReader(path string, obsOpts *obs.ObsOptions, expr []*SKRPNElement, version uint32, splitMap map[string][]byte, fileName string) (*MultilFieldVerticalFilterReader, error)

func (*MultilFieldVerticalFilterReader) IsExist

func (s *MultilFieldVerticalFilterReader) IsExist(blockId int64, elem *rpn.SKRPNElement) (bool, error)

func (*MultilFieldVerticalFilterReader) StartSpan

func (s *MultilFieldVerticalFilterReader) StartSpan(span *tracing.Span)

type SKRPNElement

type SKRPNElement struct {
	Key   string
	Value string
}

func NewSKRPNElement

func NewSKRPNElement(key, value string) *SKRPNElement

type VerticalFilterReader

type VerticalFilterReader struct {
	FilterReader
	// contains filtered or unexported fields
}

func NewVerticalFilterReader

func NewVerticalFilterReader(path string, obsOpts *obs.ObsOptions, expr influxql.Expr, version uint32, splitMap map[string][]byte, fileName string) (*VerticalFilterReader, error)

func (*VerticalFilterReader) IsExist

func (s *VerticalFilterReader) IsExist(blockId int64, elem *rpn.SKRPNElement) (bool, error)

func (*VerticalFilterReader) StartSpan

func (s *VerticalFilterReader) StartSpan(span *tracing.Span)

Jump to

Keyboard shortcuts

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