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.
70 lines
2.6 KiB
70 lines
2.6 KiB
#  bleve
|
|
|
|
[](https://github.com/blevesearch/bleve/actions?query=workflow%3ATests+event%3Apush+branch%3Amaster)
|
|
[](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
|
|
|