full-text-search: In-memory full text search engine

[ bsd3, data, library, search, text ] [ Propose Tags ]

An in-memory full text search engine library. It lets you run full-text queries on a collection of your documents.

Features:

  • Keyword queries and auto-complete/auto-suggest queries.

  • Can search over any type of "document". (You explain how to extract search terms from them.)

  • Supports documents with multiple fields (e.g. title, body)

  • Supports documents with non-term features (e.g. quality score, page rank)

  • Uses the state of the art BM25F ranking function

  • Adjustable ranking parameters (including field weights and non-term feature scores)

  • In-memory but quite compact. It does not keep a copy of your original documents.

  • Quick incremental index updates, making it possible to keep your text search in-sync with your data.

It is independent of the document type, so you have to write the document-specific parts: extracting search terms and any stop words, case-normalisation or stemming. This is quite easy using libraries such as tokenize and snowball.

The source package includes a demo to illustrate how to use the library. The demo is a simplified version of how the library is used in the hackage-server where it provides the backend for the package search feature.

Flags

Automatic Flags
NameDescriptionDefault
build-search-demo

Build a little program illustrating the use of the library

Disabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.2.0.0, 0.2.1.0, 0.2.1.1, 0.2.1.3, 0.2.1.4
Change log changelog
Dependencies array (>=0.4 && <0.6), base (>=4.5 && <5.9), bytestring, Cabal (>=1.14 && <3), containers (>=0.4 && <0.7), directory, filepath, full-text-search, mtl, snowball (>=1.0 && <1.1), split (>=0.2), tar, text (>=0.11 && <1.3), time, tokenize (>=0.1), transformers, vector (>=0.11 && <0.13) [details]
License BSD-3-Clause
Copyright 2013-2014 Duncan Coutts, 2014 Well-Typed LLP, 2014 IRIS Connect Ltd.
Author Duncan Coutts
Maintainer Duncan Coutts <duncan@well-typed.com>
Revised Revision 1 made by MikolajKonarski at 2019-04-16T07:12:00Z
Category Data, Text, Search
Bug tracker https://github.com/well-typed/full-text-search/issues
Source repo head: git clone git@github.com:well-typed/full-text-search.git
Uploaded by MikolajKonarski at 2017-08-31T08:42:37Z
Distributions NixOS:0.2.1.4
Executables search-demo
Downloads 4762 total (16 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2017-08-31 [all 1 reports]