0
0
A modern text indexing library for go. (this is a mirror of the github repository) http://www.blevesearch.com/
Go to file
Marty Schoch fb0f4bbecd BREAKING CHANGE - new method to create memory only index
Previously bleve allowed you to create a memory-only index by
simply passing "" as the path argument to the New() method.

This was not clear when reading the code, and led to some
problematic error cases as well.

Now, to create a memory-only index one should use the
NewMemOnly() method.  Passing "" as the path argument
to the New() method will now return os.ErrInvalid.

Advanced users calling NewUsing() can create disk-based or
memory-only indexes, but the change here is that pass ""
as the path argument no longer defaults you into getting
a memory-only index.  Instead, the KV store is selected
manually, just as it is for the disk-based solutions.

Here is an example use of the NewUsing() method to create
a memory-only index:

NewUsing("", indexMapping, Config.DefaultIndexType,
         Config.DefaultMemKVStore, nil)

Config.DefaultMemKVStore is just a new default value
added to the configuration, it currently points to
gtreap.Name (which could have been used directly
instead for more control)

closes #427
2016-09-27 14:11:40 -04:00
analysis make shingle token filter stateless 2016-09-15 08:59:43 -04:00
cmd/bleve remove binary accidentally committed to repo 2016-09-27 13:05:50 -04:00
config fix bug counting docs and make smolder selectable 2016-09-11 20:29:15 -04:00
docs add build tag protecting merge-coverprofile 2016-09-20 14:29:01 -04:00
document change sort field impl to use indexed values not stored values 2016-08-17 09:20:44 -07:00
http BREAKING CHANGE - removed DumpXXX() methods from bleve.Index 2016-09-13 12:40:01 -04:00
index BREAKING CHANGE - new method to create memory only index 2016-09-27 14:11:40 -04:00
numeric_util change sort field impl to use indexed values not stored values 2016-08-17 09:20:44 -07:00
registry remove unused code 2016-08-31 13:52:02 -04:00
search BREAKING CHANGE - new method to create memory only index 2016-09-27 14:11:40 -04:00
test removed unused AsyncIndex interface 2016-09-13 08:42:36 -04:00
vendor update moss gvt manifest for SeekTo() API 2016-09-23 07:18:14 -07:00
.gitignore remove binary accidentally committed to repo 2016-09-27 13:05:50 -04:00
.travis.yml remove firestorm index scheme 2016-06-26 07:51:41 -04:00
config_app.go attempt to support google app engine 2016-07-29 21:29:05 -04:00
config_disk.go attempt to support google app engine 2016-07-29 21:29:05 -04:00
config.go BREAKING CHANGE - new method to create memory only index 2016-09-27 14:11:40 -04:00
CONTRIBUTING.md adding CONTRIBUTING.md to repo 2016-06-26 09:48:43 -04:00
doc.go apply doc fix patch from rakoo 2014-09-07 09:09:47 -04:00
error.go remove temporary error and replace with permanent check 2016-02-03 10:23:49 -05:00
examples_test.go add example usage of SortBy and SortByCustom 2016-08-18 13:03:48 -07:00
index_alias_impl_test.go BREAKING CHANGE - removed DumpXXX() methods from bleve.Index 2016-09-13 12:40:01 -04:00
index_alias_impl.go BREAKING CHANGE - removed DumpXXX() methods from bleve.Index 2016-09-13 12:40:01 -04:00
index_alias.go Fix typos in comments and strings 2014-12-18 18:43:12 +01:00
index_impl.go BREAKING CHANGE - new method to create memory only index 2016-09-27 14:11:40 -04:00
index_meta_test.go fix issues identified by errcheck 2015-04-07 15:39:56 -04:00
index_meta.go Minor fix to ensure full index path exists 2016-03-13 21:44:21 -06:00
index_stats.go moved fields requiring 64-bit alignment to start of struct 2016-03-20 10:38:28 -04:00
index_test.go BREAKING CHANGE - new method to create memory only index 2016-09-27 14:11:40 -04:00
index.go BREAKING CHANGE - new method to create memory only index 2016-09-27 14:11:40 -04:00
LICENSE adding license file 2014-04-17 17:03:15 -04:00
mapping_document.go fix indexing of primitives not inside map/struct 2016-06-21 21:15:36 -04:00
mapping_field.go add support for toggling Store/Index Dynamic in IndexMapping 2016-03-08 07:58:29 -05:00
mapping_index.go remove byte_array_conveters 2016-07-01 10:21:41 -04:00
mapping_test.go fix indexing of primitives not inside map/struct 2016-06-21 21:15:36 -04:00
query_bool_field.go Implemented boolean field support 2016-01-11 17:18:03 -08:00
query_boolean.go optimization when boolean query has should constituents only 2016-09-20 18:26:00 -07:00
query_conjunction.go simplify date parsing in queries, add date to query string 2016-04-22 17:12:10 -04:00
query_date_range.go update godocs for date range querying 2016-06-26 10:25:09 -04:00
query_disjunction.go Revert "optimize when disjunction query has only a single child" 2016-09-26 14:46:21 -07:00
query_docid.go query_docid: add DocIDQuery to filter by document identifiers 2015-11-04 18:41:16 +01:00
query_fuzzy.go Fix some typos 2016-01-15 05:46:27 +07:00
query_match_all.go fix marshaling of MatchAll queries 2016-04-07 18:20:35 -04:00
query_match_none.go fix marshaling of MatchNone queries 2016-04-16 20:51:27 -04:00
query_match_phrase.go mapping_field: document IncludeTermVectors 2015-11-19 15:38:16 +01:00
query_match.go added match query operator 2016-07-06 13:15:56 +02:00
query_numeric_range.go Update NumericRangeQuery comments 2015-11-12 22:16:10 +01:00
query_phrase.go mapping_field: document IncludeTermVectors 2015-11-19 15:38:16 +01:00
query_prefix.go major refactor of kvstore/index internals, see below 2014-09-12 17:21:35 -04:00
query_regexp.go more correct fix, handles case where validate is called 2016-01-21 17:26:24 -05:00
query_string_lex.go replaced nex lexer with custom lexer 2016-09-01 13:16:07 -04:00
query_string_parser_test.go replaced nex lexer with custom lexer 2016-09-01 13:16:07 -04:00
query_string_parser.go Merge branch 'sedtweak' of https://github.com/bcampbell/bleve into bcampbell-sedtweak 2016-09-01 13:55:15 -04:00
query_string.go simplify date parsing in queries, add date to query string 2016-04-22 17:12:10 -04:00
query_string.y replaced nex lexer with custom lexer 2016-09-01 13:16:07 -04:00
query_string.y.go replaced nex lexer with custom lexer 2016-09-01 13:16:07 -04:00
query_term.go major refactor of kvstore/index internals, see below 2014-09-12 17:21:35 -04:00
query_test.go added match query operator 2016-07-06 13:15:56 +02:00
query_wildcard.go added regexp and wildcard queries 2015-03-11 16:57:22 -04:00
query.go simplify date parsing in queries, add date to query string 2016-04-22 17:12:10 -04:00
README.md adding goreportcard 2016-04-02 21:01:23 -04:00
reflect.go typo in lookupPropertyPathPart() func name 2015-11-23 09:27:22 -08:00
search_test.go parse search results by converting strings back to errors 2016-04-26 17:56:37 -04:00
search.go adjust new sort functionality to also work with MultiSearch 2016-08-24 14:07:10 -04:00

bleve bleve

Build Status Coverage Status GoDoc Join the chat at https://gitter.im/blevesearch/bleve codebeat Go Report Card

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