Pour pallier aux imperfections et bogues de la recherche FULLTEXT avec MySQL : problèmes réguliers de corruption lors de l’indexation, syntaxe de recherche inappropriée et incomplète, incompatibilité avec Innodb, … Mario Bouchard et moi avons installé Sphinx sur notre serveur de développement pour tester le tout.
Donc voici nos conclusions après avoir remplacé la recherche en FULLTEXT de MySQL sur le site en développement des Éditions CHU par le nouveau moteur de recherche.
- Recherche compatible avec tous les types de tables de MySQL : MyISAM, Innodb, … et compatible également avec PostgreSQL, MS SQL server, fichiers XML.
- La recherche est extrêmement rapide et est conçue pour digérer une grande quantité d’enregistrement.
- L’API en PHP répond très bien à nos besoins et même plus.
Pour ce qui est des fonctionalités, en voici un bref aperçu :
- Recherche de contenu avec ‘*’ : vous pouvez ainsi rechercher la fin d’un ISBN avec la commande ‘*12345’.
- Les mots apparentés sont recherchés également : pour le mot accident ont trouvera également le mot accidents.
- Les stopwords fonctionnent également : la recherche du mot ‘le’ ne produira aucun résultat tandis que la recherche ‘le camion’ en produira.
- On peut même géomarquer l’indexation pour ainsi rechercher dans un certain rayon.
- …
Il ne reste plus aux programmeurs qu’à en explorer toutes les possibilités.















