A modern text indexing library for go

Marty Schoch 17c64d37c7 add similar benchmarks from firestorm 7 years ago
analysis d00bc91dc9 minor speed up in token frequency calculations 7 years ago
docs de2e3f4d72 fix improper call to fmt.Errorf instead of Printf 8 years ago
document d00bc91dc9 minor speed up in token frequency calculations 7 years ago
http 9a09689e61 moved bleve-explorer mapping UI to bleve/http/mapping 7 years ago
index 17c64d37c7 add similar benchmarks from firestorm 7 years ago
numeric_util ef18dfe4cd Fix typos in comments and strings 8 years ago
registry dbb93b75a4 refactoring to allow pluggable index encodings 7 years ago
search dbb93b75a4 refactoring to allow pluggable index encodings 7 years ago
test f35e2e42df fix highlighting to work on fields containing arrays 7 years ago
utils dbb93b75a4 refactoring to allow pluggable index encodings 7 years ago
.gitignore 24729541b5 fix issues identified by errcheck 8 years ago
.travis.yml 652c188fe8 exclude metrics 7 years ago
LICENSE 6e7aa57b52 adding license file 9 years ago
README.md 8ed7dc1505 added godoc badge to README 8 years ago
config.go dbb93b75a4 refactoring to allow pluggable index encodings 7 years ago
config_cld2.go 1161361bea rename imports from couchbaselabs to blevesearch 8 years ago
config_cznicb.go 12dc2aff93 add go1.4 build tag to cznicb KVStore 8 years ago
config_forestdb.go 568a068105 added top-level config to optionally include forestdb support 8 years ago
config_icu.go febb8d2df1 renamed unicode_word_boundary package to icu 8 years ago
config_kagome.go 55c0e84665 relocated kagome tokenizer and introduced ja analyzer 8 years ago
config_leveldb.go 1161361bea rename imports from couchbaselabs to blevesearch 8 years ago
config_rocksdb.go 452fea6a24 adding initial impl of rocksdb kv store 8 years ago
config_stemmer.go 1161361bea rename imports from couchbaselabs to blevesearch 8 years ago
doc.go 44df73d317 apply doc fix patch from rakoo 8 years ago
error.go dbb93b75a4 refactoring to allow pluggable index encodings 7 years ago
examples_test.go 7f0961424d updated tests for <mark></mark> 7 years ago
index.go dbb93b75a4 refactoring to allow pluggable index encodings 7 years ago
index_alias.go ef18dfe4cd Fix typos in comments and strings 8 years ago
index_alias_impl.go 522f9d5cc7 significant change to index format, support dictionary rows 8 years ago
index_alias_impl_test.go 93e01a803e fix issues identified by errcheck 8 years ago
index_impl.go dbb93b75a4 refactoring to allow pluggable index encodings 7 years ago
index_meta.go dbb93b75a4 refactoring to allow pluggable index encodings 7 years ago
index_meta_test.go 56c4a09de1 fix issues identified by errcheck 8 years ago
index_race_test.go d11f1336f0 fix issues identified by errcheck 7 years ago
index_stats.go 64b0066121 added support for tracking index stats and exposing via expvar 8 years ago
index_test.go 3682c25467 update to correctly work with composite fields 7 years ago
mapping_document.go 0fab4b4583 fix nested document mappings, logic was broken 7 years ago
mapping_field.go 0ddfa774ec clean up logging to use package level *log.Logger 8 years ago
mapping_index.go 580d9013b2 fix registering tokenizers with dependencies 7 years ago
mapping_test.go 580d9013b2 fix registering tokenizers with dependencies 7 years ago
query.go a41f229b14 added regexp and wildcard queries 8 years ago
query_boolean.go 77779b70f4 Allow query string handling which contains only not must 7 years ago
query_conjunction.go 198ca1ad4d major refactor of kvstore/index internals, see below 8 years ago
query_date_range.go ef18dfe4cd Fix typos in comments and strings 8 years ago
query_disjunction.go 198ca1ad4d major refactor of kvstore/index internals, see below 8 years ago
query_fuzzy.go 5ac9583370 fix godoc around NewFuzzyQuery function 8 years ago
query_match.go 0ddfa774ec clean up logging to use package level *log.Logger 8 years ago
query_match_all.go 198ca1ad4d major refactor of kvstore/index internals, see below 8 years ago
query_match_none.go 198ca1ad4d major refactor of kvstore/index internals, see below 8 years ago
query_match_phrase.go ef18dfe4cd Fix typos in comments and strings 8 years ago
query_numeric_range.go 198ca1ad4d major refactor of kvstore/index internals, see below 8 years ago
query_phrase.go 67beaca6d6 fix to phrase/phrase match search involving stop words 8 years ago
query_prefix.go 198ca1ad4d major refactor of kvstore/index internals, see below 8 years ago
query_regexp.go a41f229b14 added regexp and wildcard queries 8 years ago
query_string.go 198ca1ad4d major refactor of kvstore/index internals, see below 8 years ago
query_string.nex 2af47cea75 fix query string query syntax when term starts with a number 7 years ago
query_string.nn.go 2af47cea75 fix query string query syntax when term starts with a number 7 years ago
query_string.y 29b4f9623a fix query parser to recognize field prefix before fuzzy tilde 8 years ago
query_string.y.go 29b4f9623a fix query parser to recognize field prefix before fuzzy tilde 8 years ago
query_string_parser.go 4c269a9f44 when generating parser, run go fmt on the lexer 8 years ago
query_string_parser_test.go 2af47cea75 fix query string query syntax when term starts with a number 7 years ago
query_term.go 198ca1ad4d major refactor of kvstore/index internals, see below 8 years ago
query_test.go 77779b70f4 Allow query string handling which contains only not must 7 years ago
query_wildcard.go a41f229b14 added regexp and wildcard queries 8 years ago
reflect.go d75d836c09 change another variable capitalization 8 years ago
search.go 0771f813ce SearchResult Took field now returns full time in Search() 8 years ago
search_test.go 0771f813ce SearchResult Took field now returns full time in Search() 8 years ago

README.md

bleve bleve

Build Status Coverage Status GoDoc

modern text indexing in go - blevesearch.com

Try out bleve live by searching our wiki.

Features

  • Index any go data structure (including JSON)
  • Intelligent defaults backed up by powerful configuration
  • Supported field types:
    • Text, Numeric, Date
  • Supported query types:
    • Term, Phrase, Match, Match Phrase, Prefix
    • Conjunction, Disjunction, Boolean
    • Numeric Range, Date Range
    • Simple query syntax for human entry
  • tf-idf Scoring
  • Search result match highlighting
  • Supports Aggregating Facets:
    • Terms Facet
    • Numeric Range Facet
    • Date Range Facet

Discussion

Discuss usage and development of bleve in the google group.

Indexing

    message := struct{
        Id   string
        From string
        Body string
    }{
        Id:   "example",
        From: "marty.schoch@gmail.com",
        Body: "bleve indexing is easy",
    }

    mapping := bleve.NewIndexMapping()
    index, err := bleve.New("example.bleve", mapping)
    if err != nil {
        panic(err)
    }
    index.Index(message.Id, message)

Querying

    index, _ := bleve.Open("example.bleve")
    query := bleve.NewQueryStringQuery("bleve")
    searchRequest := bleve.NewSearchRequest(query)
    searchResult, _ := index.Search(searchRequest)

License

Apache License Version 2.0