engine

package
v1.1.4 Latest Latest
Warning

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

Go to latest
Published: Jul 14, 2020 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Engine

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

Engine struct

func (*Engine) FlushIndex

func (engine *Engine) FlushIndex()

FlushIndex 阻塞等待直到所有索引添加完毕

func (*Engine) FullSegment added in v1.1.0

func (engine *Engine) FullSegment(text string) (tokens []string)

FullSegment 分词

func (*Engine) FullTokens added in v1.1.4

func (engine *Engine) FullTokens(text string) (tokens []*sego.Token)

FullTokens 返回详细信息的分词

func (*Engine) IndexDocument

func (engine *Engine) IndexDocument(docID uint64, data types.DocumentIndexData, forceUpdate bool)

IndexDocument 将文档加入索引

输入参数:

docID	      标识文档编号,必须唯一,docID == 0 表示非法文档(用于强制刷新索引),[1, +oo) 表示合法文档
data	      见DocumentIndexData注释
forceUpdate 是否强制刷新 cache,如果设为 true,则尽快添加到索引,否则等待 cache 满之后一次全量添加

注意:

  1. 这个函数是线程安全的,请尽可能并发调用以提高索引速度
  2. 这个函数调用是非同步的,也就是说在函数返回时有可能文档还没有加入索引中,因此 如果立刻调用Search可能无法查询到这个文档。强制刷新索引请调用FlushIndex函数。

func (*Engine) Init

func (engine *Engine) Init(options types.EngineInitOptions)

Init 初始化搜索引擎,拉起所有worker

func (*Engine) MemoryUsage

func (engine *Engine) MemoryUsage()

MemoryUsage 打印内存使用率

func (*Engine) NumDocumentsIndexed

func (engine *Engine) NumDocumentsIndexed() uint64

NumDocumentsIndexed 已加入检索队列的文档数(只用于同步的计数器)

func (*Engine) NumDocumentsRemoved

func (engine *Engine) NumDocumentsRemoved() uint64

NumDocumentsRemoved 已加入删除队列的文档数(只用于同步的计数器)

func (*Engine) NumTokenIndexAdded

func (engine *Engine) NumTokenIndexAdded() uint64

NumTokenIndexAdded 已加入检索队列的关键词数(只用于同步的计数器)

func (*Engine) RemoveDocument

func (engine *Engine) RemoveDocument(docID uint64, forceUpdate bool)

RemoveDocument 将文档从索引中删除

输入参数:

docID	      标识文档编号,必须唯一,docID == 0 表示非法文档(用于强制刷新索引),[1, +oo) 表示合法文档
forceUpdate 是否强制刷新 cache,如果设为 true,则尽快删除索引,否则等待 cache 满之后一次全量删除

注意:

  1. 这个函数是线程安全的,请尽可能并发调用以提高索引速度
  2. 这个函数调用是非同步的,也就是说在函数返回时有可能文档还没有加入索引中,因此 如果立刻调用Search可能无法查询到这个文档。强制刷新索引请调用FlushIndex函数。

func (*Engine) Search

func (engine *Engine) Search(request types.SearchRequest) (output types.SearchResponse)

Search 查找满足搜索条件的文档,此函数线程安全

func (*Engine) Segment

func (engine *Engine) Segment(text string) (tokens []string)

Segment 分词

func (*Engine) Shutdown

func (engine *Engine) Shutdown()

Shutdown 中止所有worker,关闭引擎

func (*Engine) Tokens added in v0.4.0

func (engine *Engine) Tokens(text string) (tokens []*sego.Token)

Tokens 返回详细信息的分词

Jump to

Keyboard shortcuts

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