Se o número de consultas exceder muito o número de alterações nos arquivos, a maneira mais eficiente de executar a pesquisa de texto completo é usar um índice pré-criado que seja atualizado quando os arquivos forem adicionados, alterados ou removidos.
O tipo de índice necessário depende do tipo de pesquisas. Por exemplo, você pesquisa palavras ou frases? Você quer levar em conta sinônimos? Você pesquisa fragmentos de palavras?
Quais tipos de eficiência você está procurando? Eficiência do tempo de desenvolvimento? Eficiências nos custos de licenciamento de software? Eficiência de tempo de CPU? Eficiência de E / S de disco? A maneira como você pesa isso terá um grande efeito sobre qual solução é ideal para você.
Veja também Wikipédia