Go語言實現的全文檢索引擎:bleve
bleve是一個Go語言實現的全文檢索引擎,現代文本索引庫。結合sego或goseg就能夠實現一個中文搜索引擎。
特性
- 可以索引任何Go數據結構(包括JSON)
- Intelligent defaults backed up by powerful configuration
- Supported field types:
- Text, Numeric, Date </ul> </li>
- Supported query types:
- Term, Phrase, Match, Match Phrase, Prefix
- Conjunction, Disjunction, Boolean
- Numeric Range, Date Range
- Simple query syntax for human entry </ul> </li>
- tf-idf Scoring
- Search result match highlighting
- Supports Aggregating Facets:
- Terms Facet
- Numeric Range Facet
- Date Range Facet </ul> </li> </ul>
Indexing
message := struct{ Id: "example", From: "marty.schoch@gmail.com", Body: "bleve indexing is easy", }
mapping := bleve.NewIndexMapping() index, _ := bleve.New("example.bleve", mapping) index.Index(message.Id, message)</pre></code> <h2><a class="anchor" href="/misc/goto?guid=4959614702688808805" name="user-content-querying"></a>Querying</h2>
index, _ := bleve.Open("example.bleve") query := bleve.NewQueryStringQuery("bleve") searchRequest := bleve.NewSearchRequest(query) searchResult, _ := index.Search(searchRequest)
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!