Eu entendo que indexação de texto completo e pesquisapara um banco de dados pode ser ativado por muitos produtos pré-empacotados. No entanto, apenas por curiosidade acadêmica, eu me pergunto como esses índices de texto completo são realmente implementados. Eu tentei google para resultados com pouca resposta. Por favor, qualquer feedback seria muito apreciado.
Respostas:
3 para resposta № 1Pesquisas de texto completo são suportadas por alguns mecanismos de banco de dados nos dias de hoje como um recurso central.
Quanto à implementação, acho que a sua melhor aposta é verificar os postgres pesquisas de texto completo, como você puder
- encontrar muito material sobre como é implementado
- realmente mudar e brincar com os analisadores (por exemplo otimizar para determinado domínio)
Existem mais detalhes e conceitos explicados na Wikipédia:
- índices de texto completo, e você também pode conferir
- motores de busca de código aberto e de texto completo como normalmente você encontrará documentação de apoio explicando o funcionamento interno deles também (eu ouvi coisas boas sobre Lucene / Solr desta lista)
-1 para resposta № 2
Provavelmente criando dicionários de "palavras" e talvez um pouco de análise léxica. (Observe que o texto completo pesquisa palavras inteiras e não partes de palavras, portanto, a indexação pode ser restrita a isso.)