Documentation ¶
Index ¶
- Variables
- func AnalysisWorker(q AnalysisQueue)
- type AnalysisQueue
- type AnalysisResult
- type AnalysisWork
- type Batch
- func (b *Batch) Delete(id string)
- func (b *Batch) DeleteInternal(key []byte)
- func (b *Batch) Merge(o *Batch)
- func (b *Batch) PersistedCallback() BatchCallback
- func (b *Batch) Reset()
- func (b *Batch) SetInternal(key, val []byte)
- func (b *Batch) SetPersistedCallback(f BatchCallback)
- func (b *Batch) String() string
- func (b *Batch) TotalDocSize() int
- func (b *Batch) Update(doc *document.Document)
- type BatchCallback
- type DictEntry
- type DocIDReader
- type DocValueReader
- type DocumentFieldTermVisitor
- type FieldCache
- type FieldDict
- type FieldDictContains
- type FieldTerms
- type Index
- type IndexInternalID
- type IndexReader
- type IndexReaderContains
- type IndexReaderFuzzy
- type IndexReaderOnly
- type IndexReaderRegexp
- type IndexRow
- type Optimizable
- type OptimizableContext
- type Optimized
- type Regexp
- type TermFieldDoc
- type TermFieldReader
- type TermFieldVector
Constants ¶
This section is empty.
Variables ¶
var ErrorUnknownStorageType = fmt.Errorf("unknown storage type")
Functions ¶
func AnalysisWorker ¶
func AnalysisWorker(q AnalysisQueue)
Types ¶
type AnalysisQueue ¶
type AnalysisQueue struct {
// contains filtered or unexported fields
}
func NewAnalysisQueue ¶
func NewAnalysisQueue(numWorkers int) *AnalysisQueue
func (*AnalysisQueue) Close ¶
func (q *AnalysisQueue) Close()
func (*AnalysisQueue) Queue ¶
func (q *AnalysisQueue) Queue(work *AnalysisWork)
type AnalysisResult ¶
type AnalysisResult struct { DocID string Rows []IndexRow // scorch Document *document.Document Analyzed []analysis.TokenFrequencies Length []int }
func (*AnalysisResult) Size ¶
func (a *AnalysisResult) Size() int
type AnalysisWork ¶
type AnalysisWork struct {
// contains filtered or unexported fields
}
func NewAnalysisWork ¶
func NewAnalysisWork(i Index, d *document.Document, rc chan *AnalysisResult) *AnalysisWork
type Batch ¶
type Batch struct { IndexOps map[string]*document.Document InternalOps map[string][]byte // contains filtered or unexported fields }
func (*Batch) DeleteInternal ¶
func (*Batch) PersistedCallback ¶
func (b *Batch) PersistedCallback() BatchCallback
func (*Batch) SetInternal ¶
func (*Batch) SetPersistedCallback ¶
func (b *Batch) SetPersistedCallback(f BatchCallback)
func (*Batch) TotalDocSize ¶
type BatchCallback ¶
type BatchCallback func(error)
type DocIDReader ¶
type DocIDReader interface { // Next returns the next document internal identifier in the natural // index order, nil when the end of the sequence is reached. Next() (IndexInternalID, error) // Advance resets the iteration to the first internal identifier greater than // or equal to ID. If ID is smaller than the start of the range, the iteration // will start there instead. If ID is greater than or equal to the end of // the range, Next() call will return io.EOF. Advance(ID IndexInternalID) (IndexInternalID, error) Size() int Close() error }
DocIDReader is the interface exposing enumeration of documents identifiers. Close the reader to release associated resources.
type DocValueReader ¶
type DocValueReader interface {
VisitDocValues(id IndexInternalID, visitor DocumentFieldTermVisitor) error
}
type FieldCache ¶
type FieldCache struct {
// contains filtered or unexported fields
}
func NewFieldCache ¶
func NewFieldCache() *FieldCache
func (*FieldCache) AddExisting ¶
func (f *FieldCache) AddExisting(field string, index uint16)
func (*FieldCache) FieldIndexed ¶
func (f *FieldCache) FieldIndexed(index uint16) (field string)
func (*FieldCache) FieldNamed ¶
func (f *FieldCache) FieldNamed(field string, createIfMissing bool) (uint16, bool)
FieldNamed returns the index of the field, and whether or not it existed before this call. if createIfMissing is true, and new field index is assigned but the second return value will still be false
type FieldDictContains ¶
type FieldTerms ¶
FieldTerms contains the terms used by a document, keyed by field
func (FieldTerms) FieldsNotYetCached ¶
func (f FieldTerms) FieldsNotYetCached(fields []string) []string
FieldsNotYetCached returns a list of fields not yet cached out of a larger list of fields
func (FieldTerms) Merge ¶
func (f FieldTerms) Merge(other FieldTerms)
Merge will combine two FieldTerms it assumes that the terms lists are complete (thus do not need to be merged) field terms from the other list always replace the ones in the receiver
type Index ¶
type Index interface { Open() error Close() error Update(doc *document.Document) error Delete(id string) error Batch(batch *Batch) error SetInternal(key, val []byte) error DeleteInternal(key []byte) error // Reader returns a low-level accessor on the index data. Close it to // release associated resources. Reader() (IndexReader, error) Stats() json.Marshaler StatsMap() map[string]interface{} Analyze(d *document.Document) *AnalysisResult Advanced() (store.KVStore, error) }
type IndexInternalID ¶
type IndexInternalID []byte
IndexInternalID is an opaque document identifier interal to the index impl
func (IndexInternalID) Compare ¶
func (id IndexInternalID) Compare(other IndexInternalID) int
func (IndexInternalID) Equals ¶
func (id IndexInternalID) Equals(other IndexInternalID) bool
type IndexReader ¶
type IndexReader interface { TermFieldReader(term []byte, field string, includeFreq, includeNorm, includeTermVectors bool) (TermFieldReader, error) // DocIDReader returns an iterator over all doc ids // The caller must close returned instance to release associated resources. DocIDReaderAll() (DocIDReader, error) DocIDReaderOnly(ids []string) (DocIDReader, error) FieldDict(field string) (FieldDict, error) // FieldDictRange is currently defined to include the start and end terms FieldDictRange(field string, startTerm []byte, endTerm []byte) (FieldDict, error) FieldDictPrefix(field string, termPrefix []byte) (FieldDict, error) Document(id string) (*document.Document, error) DocumentVisitFieldTerms(id IndexInternalID, fields []string, visitor DocumentFieldTermVisitor) error DocValueReader(fields []string) (DocValueReader, error) Fields() ([]string, error) GetInternal(key []byte) ([]byte, error) DocCount() (uint64, error) ExternalID(id IndexInternalID) (string, error) InternalID(id string) (IndexInternalID, error) DumpAll() chan interface{} DumpDoc(id string) chan interface{} DumpFields() chan interface{} Close() error }
type IndexReaderContains ¶
type IndexReaderContains interface {
FieldDictContains(field string) (FieldDictContains, error)
}
type IndexReaderFuzzy ¶
type IndexReaderOnly ¶
type IndexReaderRegexp ¶
type Optimizable ¶
type Optimizable interface {
Optimize(kind string, octx OptimizableContext) (OptimizableContext, error)
}
Optimizable represents an optional interface that implementable by optimizable resources (e.g., TermFieldReaders, Searchers). These optimizable resources are provided the same OptimizableContext instance, so that they can coordinate via dynamic interface casting.
type OptimizableContext ¶
type OptimizableContext interface { // Once all the optimzable resources have been provided the same // OptimizableContext instance, the optimization preparations are // finished or completed via the Finish() method. // // Depending on the optimization being performed, the Finish() // method might return a non-nil Optimized instance. For example, // the Optimized instance might represent an optimized // TermFieldReader instance. Finish() (Optimized, error) }
type Optimized ¶
type Optimized interface{}
Represents a result of optimization -- see the Finish() method.
type Regexp ¶
type Regexp interface { FindStringIndex(s string) (loc []int) LiteralPrefix() (prefix string, complete bool) String() string }
The Regexp interface defines the subset of the regexp.Regexp API methods that are used by bleve indexes, allowing callers to pass in alternate implementations.
type TermFieldDoc ¶
type TermFieldDoc struct { Term string ID IndexInternalID Freq uint64 Norm float64 Vectors []*TermFieldVector }
func (*TermFieldDoc) Reset ¶
func (tfd *TermFieldDoc) Reset() *TermFieldDoc
Reset allows an already allocated TermFieldDoc to be reused
func (*TermFieldDoc) Size ¶
func (tfd *TermFieldDoc) Size() int
type TermFieldReader ¶
type TermFieldReader interface { // Next returns the next document containing the term in this field, or nil // when it reaches the end of the enumeration. The preAlloced TermFieldDoc // is optional, and when non-nil, will be used instead of allocating memory. Next(preAlloced *TermFieldDoc) (*TermFieldDoc, error) // Advance resets the enumeration at specified document or its immediate // follower. Advance(ID IndexInternalID, preAlloced *TermFieldDoc) (*TermFieldDoc, error) // Count returns the number of documents contains the term in this field. Count() uint64 Close() error Size() int }
TermFieldReader is the interface exposing the enumeration of documents containing a given term in a given field. Documents are returned in byte lexicographic order over their identifiers.
Directories ¶
Path | Synopsis |
---|---|
mergeplan
Package mergeplan provides a segment merge planning approach that's inspired by Lucene's TieredMergePolicy.java and descriptions like http://blog.mikemccandless.com/2011/02/visualizing-lucenes-segment-merges.html
|
Package mergeplan provides a segment merge planning approach that's inspired by Lucene's TieredMergePolicy.java and descriptions like http://blog.mikemccandless.com/2011/02/visualizing-lucenes-segment-merges.html |
boltdb
Package boltdb implements a store.KVStore on top of BoltDB.
|
Package boltdb implements a store.KVStore on top of BoltDB. |
gtreap
Package gtreap provides an in-memory implementation of the KVStore interfaces using the gtreap balanced-binary treap, copy-on-write data structure.
|
Package gtreap provides an in-memory implementation of the KVStore interfaces using the gtreap balanced-binary treap, copy-on-write data structure. |
metrics
Package metrics provides a bleve.store.KVStore implementation that wraps another, real KVStore implementation, and uses go-metrics to track runtime performance metrics.
|
Package metrics provides a bleve.store.KVStore implementation that wraps another, real KVStore implementation, and uses go-metrics to track runtime performance metrics. |
Package upsidedown is a generated protocol buffer package.
|
Package upsidedown is a generated protocol buffer package. |