Banco de dados de busca open source com suporte a busca full-text, vetorial e híbrida, indexação em tempo real e SQL, como alternativa ao Elasticsearch.
quickwit-oss/tantivy
Biblioteca de busca full-text em Rust, inspirada no Apache Lucene, para adicionar busca personalizada a aplicações.
Alternativa open source a:Elasticsearch
Apache Solr
- Estrelas
- 16,247
- Forks
- 1,017
- Issues abertas
- 484
- Último commit
- há 20 horas
O que é?
Tantivy é uma crate Rust para adicionar busca full-text ao seu próprio software. Não é um servidor de busca independente; em vez disso, os desenvolvedores usam sua API para definir schemas, indexar documentos e executar consultas. Seu design segue de perto o Apache Lucene, e ela usa a pontuação BM25, que corresponde ao ranking do Lucene.
A biblioteca reúne os componentes habituais de busca: tokenizers configuráveis com stemming para 17 idiomas que usam o alfabeto latino, consultas por frase e intervalo, uma linguagem de consulta natural com operadores AND/OR e busca facetada. Os campos podem ser de texto, inteiros, números de ponto flutuante, datas, endereços IP, valores booleanos ou JSON, e os fast fields funcionam como os doc values do Lucene. Os documentos podem ser armazenados com LZ4, Zstd ou sem compressão, e um collector de agregação fornece histogramas, buckets por intervalo e estatísticas básicas.
Tantivy oferece suporte à indexação incremental e multithread, e inicia em menos de 10 ms, o que o torna adequado para ferramentas de linha de comando. Para tokenização de chinês e japonês, o projeto indica crates de tokenizer de terceiros. Ele roda em Rust stable no Linux, macOS e Windows.
Recursos principais
- 01Pontuação BM25, com o mesmo ranking do Lucene
- 02Tokenizers configuráveis com stemming para 17 idiomas que usam o alfabeto latino
- 03Consultas por frase, intervalo e linguagem natural com operadores booleanos
- 04Indexação incremental e multithread
- 05Fast fields, busca facetada e agregações
- 06Armazenamento de documentos compactado com LZ4, Zstd ou sem compressão
Casos de uso
- Adicionar busca full-text a uma aplicação Rust sem executar um servidor separado
- Criar uma ferramenta de busca personalizada para linha de comando, com inicialização rápida
- Indexar arquivos de e-mails ou mensagens para busca local
- Incorporar um mecanismo de busca a um serviço que precisa de consultas no estilo Lucene
Início rápido
- 1
Clone o repositório
git clone https://github.com/quickwit-oss/tantivy.git - 2
Acesse o diretório do projeto
cd tantivy - 3
Execute os testes com Cargo (stable Rust)
cargo test
Antes de usar
- É uma biblioteca Rust, não um servidor de busca pronto para uso; portanto, você precisa criar seu próprio aplicativo de busca com base nela.
- A busca distribuída está fora do escopo; para isso, use o Quickwit.
- Os documentos são imutáveis. Para editar um, é preciso excluí-lo e indexá-lo novamente.
- A tokenização de chinês e japonês depende de crates de terceiros.
Tópicos
Perguntas frequentes
- O que é tantivy?
- Biblioteca de busca full-text em Rust, inspirada no Apache Lucene, para adicionar busca personalizada a aplicações. Tantivy é uma crate Rust para adicionar busca full-text ao seu próprio software. Não é um servidor de busca independente; em vez disso, os desenvolvedores usam sua API para definir schemas, indexar documentos e executar consultas. Seu design segue de perto o Apache Lucene, e ela usa a pontuação BM25, que corresponde ao ranking do Lucene.
- tantivy é gratuito? Qual é a licença?
- tantivy é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- tantivy ainda é mantido?
- Manutenção ativa. O último commit de tantivy foi em 21 de out. de 2026.
- Para que posso usar tantivy?
- Adicionar busca full-text a uma aplicação Rust sem executar um servidor separado Criar uma ferramenta de busca personalizada para linha de comando, com inicialização rápida Indexar arquivos de e-mails ou mensagens para busca local Incorporar um mecanismo de busca a um serviço que precisa de consultas no estilo Lucene
- Como instalar tantivy?
- Clone o repositório: git clone https://github.com/quickwit-oss/tantivy.git Acesse o diretório do projeto: cd tantivy Execute os testes com Cargo (stable Rust): cargo test
- Onde consigo tantivy?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/quickwit-oss/tantivy
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Mecanismo de busca de texto completo leve, escrito em Go e distribuído como um único binário, que oferece uma alternativa mais simples ao Elasticsearch para buscas em aplicações.
Uma biblioteca Java de busca textual completa e de alto desempenho, usada como base para criar aplicações de busca.
Um módulo do Redis que adiciona busca full-text, indexação secundária, busca por similaridade vetorial e consultas de agregação aos dados do Redis.
Apache Solr é uma plataforma de busca multimodal de código aberto, baseada no Apache Lucene, para buscas de texto completo, vetoriais e geoespaciais.
Uma extensão do Postgres que adiciona busca full-text, busca vetorial, pontuação BM25 e agregações ao seu banco de dados Postgres existente.