0
0
Fork 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 79cc39a67e refactor mapping to inteface and move into separate package
the index mapping contains some relatively messy logic
and the top-level bleve package only cares about a relatively
small portion of this
the motivation for this change is to codify the part that the
top-level bleve package cares about into an interface
then move all the details into its own package

NOTE: the top-level bleve package still has hard dependency on
the actual implementation (for now) because it must deserialize
mappings from JSON and simply assumes it is this one instance.
this is seen as OK for now, and this issue could be revisited
in a future change.  moving the logic into a separate package
is seen as a simplification of top-level bleve, even though
we still depend on the one particular implementation.
2016-09-29 14:53:18 -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 refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
index don't panic on missing backindex row 2016-09-27 22:16:45 -04:00
mapping refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -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 add unit test for skipping more than number of hits found 2016-09-28 08:28:20 -04:00
test refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -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
CONTRIBUTING.md adding CONTRIBUTING.md to repo 2016-06-26 09:48:43 -04:00
LICENSE adding license file 2014-04-17 17:03:15 -04:00
README.md adding goreportcard 2016-04-02 21:01:23 -04:00
config.go BREAKING CHANGE - new method to create memory only index 2016-09-27 14:11:40 -04:00
config_app.go adding appenginevm build tag 2016-09-28 18:31:36 -04:00
config_disk.go adding appenginevm build tag 2016-09-28 18:31:36 -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 refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
index.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
index_alias.go Fix typos in comments and strings 2014-12-18 18:43:12 +01:00
index_alias_impl.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
index_alias_impl_test.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
index_impl.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
index_meta.go Minor fix to ensure full index path exists 2016-03-13 21:44:21 -06:00
index_meta_test.go fix issues identified by errcheck 2015-04-07 15:39:56 -04: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 refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
mapping.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_bool_field.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_boolean.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_conjunction.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_date_range.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_disjunction.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_docid.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_fuzzy.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_match.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_match_all.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_match_none.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_match_phrase.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_numeric_range.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_phrase.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_prefix.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_regexp.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_string.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -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_string_lex.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_parser_test.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_term.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_test.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
query_wildcard.go refactor mapping to inteface and move into separate package 2016-09-29 14:53:18 -04:00
search.go adjust new sort functionality to also work with MultiSearch 2016-08-24 14:07:10 -04:00
search_test.go parse search results by converting strings back to errors 2016-04-26 17:56:37 -04:00

README.md

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