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 a16efa5e78 add experimental support for indexing/query geo points
New field type GeoPointField, or "geopoint" in mapping JSON.

Currently structs and maps are considered when a mapping explicitly
marks a field as type "geopoint".  Several variants of "lon", "lng", and "lat"
are looked for in map keys, struct field names, or method names.

New query type GeoBoundingBoxQuery searches for documents which have a
GeoPointField indexed with a value that is inside the specified bounding box.

New query type GeoDistanceQuery searches for documents which have a
GeoPointField indexed with a value that is less than or equal to the
specified distance from the specified location.

New sort by method "geo_distance".  Hits can be sorted by their distance
from the specified location.

New geo utility package with all routines ported from Lucene.

New FilteringSearcher, which wraps an existing Searcher, but filters
all hits with a user-provided callback.
2017-03-24 17:22:21 -07:00
analysis add validtion which checks the type of char/token filters 2017-02-24 15:57:10 -05:00
cmd/bleve use cobra command Annotations to identify mutating commands 2017-02-15 15:37:26 -05:00
config remove smolder indexing scheme 2017-03-01 14:38:17 -05:00
docs nicer formatting of license header 2016-10-02 10:13:14 -04:00
document add experimental support for indexing/query geo points 2017-03-24 17:22:21 -07:00
geo add experimental support for indexing/query geo points 2017-03-24 17:22:21 -07:00
http fix misspellings 2016-10-02 12:11:15 -04:00
index Merge pull request #546 from sreekanth-cb/store_abort_close 2017-03-07 12:35:18 -05:00
mapping add experimental support for indexing/query geo points 2017-03-24 17:22:21 -07:00
numeric add experimental support for indexing/query geo points 2017-03-24 17:22:21 -07:00
registry optimize FacetsBuilder with cached fields & avoid some allocs 2016-10-25 15:34:48 -07:00
search add experimental support for indexing/query geo points 2017-03-24 17:22:21 -07:00
test add query support for multi-phrase 2017-02-10 16:46:38 -05:00
vendor MB-22410 - Configurable forced Store Abort API 2017-03-07 19:33:51 +05:30
.gitignore initial refactor of query into separate package 2016-09-29 14:54:16 -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 Apache2 license badge 2017-02-13 16:09:54 -08:00
config.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
config_app.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
config_disk.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
doc.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
error.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
examples_test.go additional golint cleanups 2016-10-02 12:00:01 -04:00
index.go Add comment about JSON serialization of kvconfig 2016-10-19 10:19:14 -04:00
index_alias.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
index_alias_impl.go API change: optional SearchRequest.IncludeLocations flag 2017-01-05 21:11:22 -08:00
index_alias_impl_test.go simplified MultiSearch requires that indexes honor context deadlines 2016-11-03 16:44:20 -07:00
index_impl.go API change: optional SearchRequest.IncludeLocations flag 2017-01-05 21:11:22 -08:00
index_meta.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
index_meta_test.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
index_stats.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
index_test.go remove use of float64 to represent int things 2017-02-09 20:15:59 -05:00
mapping.go add experimental support for indexing/query geo points 2017-03-24 17:22:21 -07:00
query.go Settle on default fuzziness of 1 (for now) 2016-10-04 15:00:50 +13:00
search.go MB-20793 : Validation for min/max/start/end params for numeric/date range facets 2017-02-02 12:15:48 +05:30
search_test.go clean up of unit test. 2017-02-02 23:33:26 +05:30

README.md

bleve bleve

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

modern text indexing in go - blevesearch.com

Try out bleve live by searching the bleve website.

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