A modern text indexing library for go

Marty Schoch 699c86073a make existing integration tests work with firestorm 3 years ago
analysis 9777846206 Merge branch 'master' into firestorm 3 years ago
config 9777846206 Merge branch 'master' into firestorm 3 years ago
docs fcf3980cea set GIT_BRANCH to TRAVIS_BRANCH 3 years ago
document 01526e971f Merge branch 'master' into firestorm 4 years ago
http ab3188becb http/mapping subdir replaced by blevesearch/bleve-mapping-ui 3 years ago
index 699c86073a make existing integration tests work with firestorm 3 years ago
numeric_util f43fa4294a simplify prefix coding 4 years ago
registry f95f1d29a0 exception: fail if pattern is empty, name tokenizer in error 4 years ago
search 19230b2f8a searcher_docid: catch DocIDReader.Close() possible error 4 years ago
test 699c86073a make existing integration tests work with firestorm 3 years ago
utils b2ac05c6d0 support metrics through bleve query 3 years ago
.gitignore 8609e7af08 Simplify JSON API for phrase query 4 years ago
.travis.yml 808f2c1e43 remove exceptions from errcheck 3 years ago
LICENSE 6e7aa57b52 adding license file 5 years ago
README.md ad82b4b33e updated link to simple query syntax in README.md 4 years ago
config.go 699c86073a make existing integration tests work with firestorm 3 years ago
doc.go 44df73d317 apply doc fix patch from rakoo 5 years ago
error.go da40935e22 Merge branch 'codesimplification' of https://github.com/Shugyousha/bleve into Shugyousha-codesimplification 4 years ago
examples_test.go e2fa3d6351 doc: document Token, TokenFrequencies and Field structs 4 years ago
index.go 2fa334fc27 doc: talk about "documents" not "indexed or stored documents" 4 years ago
index_alias.go ef18dfe4cd Fix typos in comments and strings 4 years ago
index_alias_impl.go 522f9d5cc7 significant change to index format, support dictionary rows 4 years ago
index_alias_impl_test.go 93e01a803e fix issues identified by errcheck 4 years ago
index_impl.go 64ce81c283 Merge branch 'master' into newkvstore 4 years ago
index_meta.go 900f1b4a67 major kvstore interface and impl overhaul 4 years ago
index_meta_test.go 56c4a09de1 fix issues identified by errcheck 4 years ago
index_race_test.go d11f1336f0 fix issues identified by errcheck 4 years ago
index_stats.go 64b0066121 added support for tracking index stats and exposing via expvar 5 years ago
index_test.go 2d4cd7a696 go fmt index_text.go 3 years ago
mapping_document.go 7db27aeba1 implement document static mappings 4 years ago
mapping_field.go 17d8391b2f Fixes datetime mapping from JSON, using DateTimeFieldMapping 3 years ago
mapping_index.go ff41dfec3d mapping_index: add IndexMapping.FieldAnalyzer() 3 years ago
mapping_test.go 0579d58263 mapping_test: fix TestMappingWithTokenizerDeps now patterns are required 4 years ago
query.go 8609e7af08 Simplify JSON API for phrase query 4 years ago
query_boolean.go 77779b70f4 Allow query string handling which contains only not must 4 years ago
query_conjunction.go 198ca1ad4d major refactor of kvstore/index internals, see below 5 years ago
query_date_range.go ef18dfe4cd Fix typos in comments and strings 4 years ago
query_disjunction.go 198ca1ad4d major refactor of kvstore/index internals, see below 5 years ago
query_docid.go ff7234d893 query_docid: add DocIDQuery to filter by document identifiers 4 years ago
query_fuzzy.go 5ac9583370 fix godoc around NewFuzzyQuery function 4 years ago
query_match.go 0ddfa774ec clean up logging to use package level *log.Logger 4 years ago
query_match_all.go 198ca1ad4d major refactor of kvstore/index internals, see below 5 years ago
query_match_none.go 198ca1ad4d major refactor of kvstore/index internals, see below 5 years ago
query_match_phrase.go 1591ed1839 mapping_field: document IncludeTermVectors 3 years ago
query_numeric_range.go b3a1e21c12 Update NumericRangeQuery comments 3 years ago
query_phrase.go 1591ed1839 mapping_field: document IncludeTermVectors 3 years ago
query_prefix.go 198ca1ad4d major refactor of kvstore/index internals, see below 5 years ago
query_regexp.go a41f229b14 added regexp and wildcard queries 4 years ago
query_string.go 198ca1ad4d major refactor of kvstore/index internals, see below 5 years ago
query_string.nex 2af47cea75 fix query string query syntax when term starts with a number 4 years ago
query_string.nn.go 2af47cea75 fix query string query syntax when term starts with a number 4 years ago
query_string.y 29b4f9623a fix query parser to recognize field prefix before fuzzy tilde 4 years ago
query_string.y.go 29b4f9623a fix query parser to recognize field prefix before fuzzy tilde 4 years ago
query_string_parser.go 4c269a9f44 when generating parser, run go fmt on the lexer 4 years ago
query_string_parser_test.go 2af47cea75 fix query string query syntax when term starts with a number 4 years ago
query_term.go 198ca1ad4d major refactor of kvstore/index internals, see below 5 years ago
query_test.go ff7234d893 query_docid: add DocIDQuery to filter by document identifiers 4 years ago
query_wildcard.go a41f229b14 added regexp and wildcard queries 4 years ago
reflect.go 19c43af6d4 typo in lookupPropertyPathPart() func name 3 years ago
search.go ee8af9cfa3 doc: document field values storage and retrieval 4 years ago
search_test.go 0771f813ce SearchResult Took field now returns full time in Search() 4 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