You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							67 lines
						
					
					
						
							2.5 KiB
						
					
					
				
			
		
		
	
	
							67 lines
						
					
					
						
							2.5 KiB
						
					
					
				| #  bleve
 | |
| 
 | |
| [](https://travis-ci.org/blevesearch/bleve) [](https://coveralls.io/github/blevesearch/bleve?branch=master) [](https://godoc.org/github.com/blevesearch/bleve)
 | |
| [](https://gitter.im/blevesearch/bleve?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
 | |
| [](https://codebeat.co/projects/github-com-blevesearch-bleve)
 | |
| [](https://goreportcard.com/report/blevesearch/bleve)
 | |
| [](https://sourcegraph.com/github.com/blevesearch/bleve?badge)  [](https://opensource.org/licenses/Apache-2.0)
 | |
| 
 | |
| modern text indexing in go - [blevesearch.com](http://www.blevesearch.com/)
 | |
| 
 | |
| Try out bleve live by [searching the bleve website](http://www.blevesearch.com/search/?q=bleve).
 | |
| 
 | |
| ## 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](http://www.blevesearch.com/docs/Query-String-Query/) 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](https://groups.google.com/forum/#!forum/bleve).
 | |
| 
 | |
| ## Indexing
 | |
| 
 | |
| ```go
 | |
| 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
 | |
| 
 | |
| ```go
 | |
| index, _ := bleve.Open("example.bleve")
 | |
| query := bleve.NewQueryStringQuery("bleve")
 | |
| searchRequest := bleve.NewSearchRequest(query)
 | |
| searchResult, _ := index.Search(searchRequest)
 | |
| ```
 | |
| 
 | |
| ## License
 | |
| 
 | |
| Apache License Version 2.0
 | |
| 
 |