Lire Queryrecherche plein texte (Postgres) Vs recherche élastique
Dans Posgres, indexation plein texte permet documents à prétraitées et un index sauvegardé pour une recherche rapide plus tard. Le prétraitement comprend:
Analyse de documents en jetons.
Conversion de jetons en lexèmes.
Stockage des documents pré-traités optimisés pour la recherche.
de type tsvector
est utilisé dans Postgres pour la recherche en texte intégral
de type tsvector
est différent de celui text
type dans les aspects ci-dessous:
Elimine cas. Majuscules/minuscules de cas sont identiques
Enlève arrêter les mots (et, ou, non, elle, lui, et des centaines d'autres) -Parce ces mots ne sont pas pertinents pour la recherche de texte
Remplace synonymes et prend des tiges de mot (
elephant
->eleph
). Dans le catalogue de texte intégral, il n'a pas le motelephant
mais le motelep
.peut (et doit) être indexé avec GIST et GIN
classement sur mesure avec des poids &
ts_rank
Comment la recherche élastique (moteur de recherche) a un avantage sur la recherche en texte intégral dans Postgres?
Pour la recherche en texte intégral, mise à part la configuration de la base de données Postgres, avons-nous besoin d'autre chose pour le déploiement? – overexchange
aucun autre composant re requis, il y a cependant beaucoup à lire et à comprendre avant qu'il puisse être utilisé .. – Jasen
Oui, j'ai fait cette lecture [ici] (https://github.com/shamhub/Web-app/tree/ master/Elastic_search/Full_text_search_Postgres), mais je vois que la recherche élastique en utilisant lucene supporte moins de documents schema contrairement aux tables postgres. N'est-ce pas? – overexchange