storage

package
v0.1.3 Latest Latest
Warning

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

Go to latest
Published: Mar 3, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var GlobalInvertedDB []*InvertedDB
View Source
var GlobalTrieDB []*TrieDB

Functions

func Get

func Get(db *bolt.DB, bucket string, key []byte) (r []byte, err error)

Get 通过bolt获取数据

func InitGlobalTrieDB added in v0.1.1

func InitGlobalTrieDB(ctx context.Context)

InitGlobalTrieDB 初始化trie tree树

func InitStorageDB added in v0.1.1

func InitStorageDB(ctx context.Context)

func Mmap

func Mmap(fd int, offset int64, length int) ([]byte, error)

Mmap 将一个文件映射到内存中,以便可以直接通过内存访问文件的内容。 映射后的内存可以像普通的字节切片一样进行读取和写入操作,而不需要额外的文件读写操作。 这对于处理大文件或需要频繁访问文件内容的场景非常有用,因为避免了多次磁盘读写操作,提高了性能。

func Put

func Put(db *bolt.DB, bucket string, key []byte, value []byte) error

Put 通过bolt写入数据

Types

type InvertedDB

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

func InitInvertedDB added in v0.1.1

func InitInvertedDB(ctx context.Context) []*InvertedDB

InitInvertedDB 初始化倒排索引库

func NewInvertedDB

func NewInvertedDB(termName, postingsName string) *InvertedDB

NewInvertedDB 新建一个inverted

func (*InvertedDB) Close

func (t *InvertedDB) Close()

func (*InvertedDB) GetInverted

func (t *InvertedDB) GetInverted(key []byte) (value []byte, err error)

GetInverted 通过term获取value

func (*InvertedDB) GetInvertedDoc

func (t *InvertedDB) GetInvertedDoc(offset int64, size int64) ([]byte, error)

GetInvertedDoc 根据地址获取读取文件

type KvInfo

type KvInfo struct {
	Key   []byte
	Value []byte
}

type TrieDB added in v0.1.1

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

func NewTrieDB added in v0.1.1

func NewTrieDB(filePath string) *TrieDB

NewTrieDB 初始化trie

func (*TrieDB) Close added in v0.1.1

func (d *TrieDB) Close() (err error)

Close 关闭db

func (*TrieDB) GetTrieTree added in v0.1.1

func (d *TrieDB) GetTrieTree(key []byte) (value []byte, err error)

GetTrieTree 通过term获取value

func (*TrieDB) GetTrieTreeDict added in v0.1.1

func (d *TrieDB) GetTrieTreeDict() (trieTree *trie.Trie, err error)

GetTrieTreeDict 获取 trie tree

func (*TrieDB) PutTrieTree added in v0.1.1

func (d *TrieDB) PutTrieTree(key, value []byte) (err error)

PutTrieTree 存储

func (*TrieDB) StorageDict added in v0.1.1

func (d *TrieDB) StorageDict(trieTree *trie.Trie) (err error)

Jump to

Keyboard shortcuts

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