Tantivy is a full text search engine library written in rust.
It is strongly inspired by Lucene's design.
- configurable indexing (optional term frequency and position indexing)
- tf-idf scoring
- Basic query language
- Phrase queries
- Incremental indexing
- Multithreaded indexing (indexing English Wikipedia takes < 3 minutes on my desktop)
- mmap based
- optional SIMD integer compression
- u64 and i64 fast fields (equivalent of doc values in Lucene)
- LZ4 compressed document store
- Cheesy logo with a horse
Tantivy supports Linux, MacOS and Windows.
- tantivy's usage example
- tantivy-cli and its tutorial. It will walk you through getting a wikipedia search engine up and running in a few minutes.
- [reference doc]
Tantivy requires Rust Nightly because it uses requires the features
tantivy uses a git submodule called
After cloning the repository, you will need to initialize and update
the submodules. The project can then be built using
git clone email@example.com:tantivy-search/tantivy.git cd tantivy cargo build
Alternatively, if you are trying to compile
tantivy without simd compression,
you can disable this functionality. In this case, this submodule is not required
and you can compile tantivy by using the
cargo build --no-default-features
Send me an email (paul.masurel at gmail.com) if you want to contribute to tantivy.