Archives FluxBB.fr

Les archives de FluxBB.fr

Vous n'êtes pas identifié(e).

#1 05-12-2007 03:28:18

Mpok
Néo Admin

Recherche FULLTEXT

Bonsoir,

Rappel : dans la 1.3, la recherche (avec mySql) utilisera l'index FULLTEXT au lieu des tables "search_matches" et "search_words".

Ne connaissant pas, j'ai voulu tester (j'ai créé une table ressemblant à une table "posts", avec des morceaux de "topics" dedans, pour avoir les sujets).

On parle souvent des AVANTAGES du fulltext :
- plus léger en terme de place.
- plus rapide.

Pour le premier point, c'est évident, les gros forums vont être contents..
Pour le second point, ça reste à voir mais c'est probable (il faudrait faire des tests de performance plus poussés).

En revanche, on oublie de parler des INCONVENIENTS :

1) la taille minimale d'un mot recherché est fixée 4 caractères.
2) la liste des "stopwords" est fixée (les mots courants, du genre "this", "some",...) et ce sont les mots ANGLAIS.
3) les caractères de séparation des mots sont fixés et en particulier, ce qui est gênant pour nous, français, le "-" est considéré comme un séparateur (une recherche sur "dix-huit" donnera donc la même chose qu'une recherche sur "huit").
4) les accents ne sont pas pris en compte (une recherche sur "élève" sort aussi les "élevé").
5) les recherches multi-mots sont considérées comme des OU : "mot1 mot2" donnera donc "mot1 OU mot2" (alors qu'il semble plus logique de donner "mot1 ET mot2").

Les points 1) 2) et 3) sont éventuellement modifiables, mais il faut avoir accès aux fichiers de configuration de MySql (donc en gros avoir un serveur dédié).

Le point 4) pourrait être résolu grâce au futur passage en utf-8 (pas essayé).
Si quelqu'un a déjà utilisé la recherche fulltext sur une table en utf-8, merci de me rassurer...

Bref, pour les forums en anglais, pas de lézard, mais pour les forums français, c'est pas évident.

Hors ligne

#2 05-12-2007 12:34:50

mangafan
Membre

Re : Recherche FULLTEXT

Je vais me prendre le choux dans les futurs recherches sur les forums punbb 1.3 comme dans vBulletin...


:canon: Mangafan : Mettez un chat dans votre processeur ! happy

Hors ligne

#3 05-12-2007 13:33:08

MT
Admin rasé

Re : Recherche FULLTEXT

Ouais, faut vérifier le point 4, parce que sinon ça signifie que des forums en hébreux, en japonais, bref avec des caractères non latins ne pourront pas du tout utiliser la fonction recherche.

Et le point 5, Mysql permet pas de modifier le type OU et ET avec un réglage dans la requête ?


(s) MT
ex-Apupv
:faq: :recherche:
Gra.

Hors ligne

#4 05-12-2007 21:27:54

Mpok
Néo Admin

Re : Recherche FULLTEXT

MT a écrit :

Ouais, faut vérifier le point 4, parce que sinon ça signifie que des forums en hébreux, en japonais, bref avec des caractères non latins ne pourront pas du tout utiliser la fonction recherche.

Dans la documentation mysql il est précisé que ça marche avec utf-8, donc je suppose que ça marchera avec punbb 1.3

MT a écrit :

Et le point 5, Mysql permet pas de modifier le type OU et ET avec un réglage dans la requête ?

Si, en utilisant un mode différent du fulltext ("boolean mode").
Mais la recherche doit alors être spécifiée comme ceci "+mot1 +mot2" pour un ET.
Donc deux solutions :
- soit on veut garder la possibilité de faire un OU (et un SAUF avec "-mot2"), mais dans ce cas il va falloir "apprendre" aux utilisateurs à faire les recherches wink parce que par défaut il vont se retrouver avec un OU alors qu'ils pensaient certainement faire un ET.
- soit on "aide" les utilisateurs en leur simulant par défaut un ET (comme ils en ont l'habitude). Donc on rajoute les "+" dans le code, mais dans ce cas on se prive de la possibilité du OU (mais qui a priori est assez peu utile).

Note : rien n'est fait en ce sens actuellement sur la version de dev 1.3 (pas d'utilisation de "boolean mode"). Mais deux tickets sont ouverts sur fulltext, donc ayons confiance..

Hors ligne

Pied de page des forums