A full-text search engine library written in Rust, inspired by Apache Lucene.
Tantivy is a full-text search engine library written in Rust, designed for building fast and efficient search capabilities directly into applications. It provides robust indexing and querying features, serving as a high-performance alternative to libraries like Apache Lucene. The library emphasizes low startup times, multithreaded performance, and flexibility for integration into various software projects.
Developers building search functionality into applications, especially those using Rust who need an embedded, high-performance search library. It's also suitable for creators of command-line tools or those seeking a Lucene-like engine without the overhead of a full search server.
Developers choose Tantivy for its Rust-based performance, tiny startup times (under 10ms), and multithreaded indexing capabilities. Its unique selling points include SIMD integer compression, configurable tokenizers with support for multiple languages, and being a library (not a server) that offers Lucene-like features with often faster query performance.
Tantivy is a full-text search engine library inspired by Apache Lucene and written in Rust
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Benchmarks show Tantivy is approximately twice as fast as Apache Lucene on average for search latency, making it ideal for high-throughput applications.
With startup times under 10 milliseconds, it's perfectly suited for command-line tools and embedded systems where low latency is critical.
Offers configurable tokenizers with stemming for 17 Latin languages and integrates third-party tokenizers for Chinese, Japanese, and Korean, enabling advanced text processing.
Capable of indexing large datasets quickly; for example, it can index English Wikipedia in less than 3 minutes on a desktop, thanks to multithreaded support.
Distributed search is explicitly out of scope, so scaling horizontally requires additional tools like Quickwit, adding complexity for large-scale deployments.
Documents cannot be edited directly; updates require deleting and reindexing, which can be inefficient and cumbersome for applications with frequent data changes.
While bindings for Python and Ruby exist, they are community-maintained and may be less robust, posing integration challenges for teams not using Rust.
tantivy is an open-source alternative to the following products: