191193Close
yAroOn the 2007-11-18 at 02:32pm
Je me demande quand meme de nous deux qui est le plus orgueileux .... perso j'ai deja accepté plein d'aides/mise à jours/corrections sur yN venant de pas mal de personnes, ca m'a jamais posé problème de prendre la solution de quelqu'un si elle est bonne.

Pour en revenir au moteur, on te dit juste que ta solution "tel quel" n'est pas utilisable, on a fait plusieurs fois les tests et personne peut contredire le fait que ca va pas à cause de la taille que ca prend. D'ailleurs tu ne veux pas non plus admettre que ton modele est pas bon lorsqu'on dépasse une certaine quantité de données a indexer.

Ensuite pour essayer d'améliorer le moteur en place actuellement, il faut se passer du fulltext, car ce type de recherche bloque la limite minimale de la taille d'un mot à 4 lettres (il est expliqué sur le site de mysql que ca tiendrait pas au niveau perfs, doit bien y avoir une raison). Donc ... si j'indexe les mots de 3 lettres en plus ... ok admettons. Ensuite pour y rechercher je n'ai qu'une solution, faire une recherche tout bete LIKE %mot%. De là découlent deux problèmes :
- plus aucun tri selon la pertinence, si on tape 2 mots ca peut retourner un peu n'importe quoi dans n'importe quel ordre
- de nouveau le problème du "OU" (bah ué j'y tiens), ca revient à faire deux requetes ... faudrait voir ce que ca donne au niveau des perfs

Sinon il y a encore une solution, mais que je n'ai pas eu le temps de tester. Professionnellement j'ai utilisé le moteur "Lucene" dans une de mes missions. Zend l'ont intégré dans leur framework .... quelqu'un s'est déjà penché dessus ? Ce moteur a de bonnes perfs et retourne des résultats pertinents, en .NET et java, php pas testé ... donc si qqun a des retours dessus je serais interessé ^