Comprendre la recherche en texte intégral avec Postgres
Piotr Lewandowski, @constjs
Tableau de contenu
- Créer des tables DB de démonstration
- STEMMER - Documents de construction
- Recherche - Building Queries
- Pratiques de performance
- Régler le poids et le classement
- Améliorer la qualité de la recherche
- Dès la lecture
Lorsque la recherche en texte intégral?
- Recherche par contenu créé par des personnes (pas des programmeurs)
- Divisez les fragments de document de plus en moins importants
- Recherche de vidages de la base de données de WikiLeaks
Pourquoi pas tout simplement regex?
Regex est bon pour ne trouver que des langues simples et finies
Impuissant pour la grammaire
Lent (peut être amélioré avec les indices de trigramme)
Beaucoup de pièges même pour des langues simples comme HTML
Compliqué à maintenir, par exemple
^(?=[A-Z0-9][A-Z0-9@._%+-]{5,253}$)[A-Z0-9._%+-]{1,64}@(?:(?=[A-Z0-9-]{1,63}.)[A-Z0-9]+(?:-[A-Z0-9]+)*.){1,8}[A-Z]{2,63}$
Pourquoi Postgres?
- Assez riche en fonctionnalités
- Flexible et extensible
- Peut-être que tu l'as déjà
- Point d'entrée bas
- Si votre pile technologique est déjà surdimensionnée