modern text indexing in go - blevesearch.com
Try out bleve live by searching the bleve website.
- 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
 
 
Discuss usage and development of bleve in the google group.
message := struct{
	Id   string
	From string
	Body string
}{
	Id:   "example",
	From: "[email protected]",
	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)index, _ := bleve.Open("example.bleve")
query := bleve.NewQueryStringQuery("bleve")
searchRequest := bleve.NewSearchRequest(query)
searchResult, _ := index.Search(searchRequest)Apache License Version 2.0