[phpBB] Optimiser le système de recherche
13 messages
• Page 1 sur 1
-

cybervince - WRInaute impliqué

- Messages: 880
- Inscription: 1 Aoû 2004
[phpBB] Optimiser le système de recherche
C'est un constat que je fais depuis pas mal de temps, la base de données de phpBB devient vite énorme lorsque les posts arrivent, et quand on regarde ce qui prend le plus de place, c'est les tables servant à faire les recherches.
Pour ma part ca donne ca:
Le principe serait de vider les tables servant aux recherches et de mettre un index en FULLTEXT sur le contenu des posts ce qui a pour conséquence de doubler la taille de la table.
Dans mon cas, je gagnerai 10-4 soit 6 Mo sur la base.
Ensuite pour effectuer les recherches, j'utiliserai la fonction MATCH de MySQL qui me retournerai les posts jugés les plus pertinents (il se base sur les différents mots contenus dans le post, donc si on demande de rechercher un ou plusieurs mots, il les trouvera).
J'aimerai avoir vos avis et vos expériences par rapport à cela.
Si certains ont déjà tenté ce truc, si vous voyez des régressions qu'il pourrait y avoir...
Pour ma part ca donne ca:
- Code: Tout sélectionner
phpbb_posts_text: 4,2 Mo
phpbb_search_wordlist: 1,3 Mo
phpbb_search_wordmatch: 9,4 Mo
Le principe serait de vider les tables servant aux recherches et de mettre un index en FULLTEXT sur le contenu des posts ce qui a pour conséquence de doubler la taille de la table.
Dans mon cas, je gagnerai 10-4 soit 6 Mo sur la base.
Ensuite pour effectuer les recherches, j'utiliserai la fonction MATCH de MySQL qui me retournerai les posts jugés les plus pertinents (il se base sur les différents mots contenus dans le post, donc si on demande de rechercher un ou plusieurs mots, il les trouvera).
J'aimerai avoir vos avis et vos expériences par rapport à cela.
Si certains ont déjà tenté ce truc, si vous voyez des régressions qu'il pourrait y avoir...
-

cybervince - WRInaute impliqué

- Messages: 880
- Inscription: 1 Aoû 2004
Ohax a écrit:Perso je vide régulièremment ces tables sinon je m'en sort plus...
C'est aussi ce que je compte faire, mais il faut admettre que pouvoir rechercher un post datant d'avant guerre est bien pratique quand on en a besoin, et si tu vide la table, et bien les recherchent partent de zéro, ce qui est un peu dommage, car c'est avant tout pratique pour les vieux posts.
-

cybervince - WRInaute impliqué

- Messages: 880
- Inscription: 1 Aoû 2004
Oui j'ai déjà la boite de recherche Google, mais ca nécessite effectivement d'avoir un forum ayant tout ses posts référencés, et je ne suis pas certain que ca soit bien le cas.
Alors qu'avec cette méthode même les posts nouvellement créés et non référencés sont accessibles.
Disons que le post était plus destiné à améliorer le système de recherche en l'allégeant, que de contourner le problème.
Je me demande en fait si y'a pas une fonction miracle qui permettrai de faire une recherche dans la table sans avoir besoin de rajouter cet index en fulltext qui est indispensable à la fonction MATCH.
Alors qu'avec cette méthode même les posts nouvellement créés et non référencés sont accessibles.
Disons que le post était plus destiné à améliorer le système de recherche en l'allégeant, que de contourner le problème.
Je me demande en fait si y'a pas une fonction miracle qui permettrai de faire une recherche dans la table sans avoir besoin de rajouter cet index en fulltext qui est indispensable à la fonction MATCH.
-

cybervince - WRInaute impliqué

- Messages: 880
- Inscription: 1 Aoû 2004
Suede a écrit:l'avantage de la recherche de phpbb est de chercher par forum et utilisateurs.
En utilisant le fichier stopwords, tu peux déjà vider ta table de pas mal de mot.
François
Ca sera toujours possible de faire une recherche pas forum, vu que ca n'est pas une information qui est supprimée de la base.
Juste besoin de faire une jointure au niveau SQL pour travailler sur un forum et/ou un utilisateur.
- sgaze
- WRInaute impliqué

- Messages: 538
- Inscription: 2 Fév 2004
Pour l'instant j'ai pris le parti de supprimer dans phpbb_search_wordmatch les occurences d'une liste comme celle là. Mais c'est lourd...
'alors', 'au', 'aucuns', 'aussi', 'autre', 'avant', 'avec', 'avoir', 'bon', 'car', 'ce', 'cela', 'ces', 'ceux', 'chaque', 'ci', 'comme', 'comment', 'dans', 'des', 'du', 'dedans', 'dehors', 'depuis', 'deux', 'devrait', 'doit', 'donc', 'dos', 'droite', 'début', 'elle', 'elles', 'en', 'encore', 'essai', 'est', 'et', 'eu', 'fait', 'faites', 'fois', 'font', 'force', 'haut', 'hors', 'ici', 'il', 'ils', 'je juste', 'la', 'le', 'les', 'leur', 'là', 'ma', 'maintenant', 'mais', 'mes', 'mine', 'moins', 'mon', 'mot', 'même', 'ni', 'nommés', 'notre', 'nous', 'nouveaux', 'ou', 'où', 'par', 'parce', 'parole', 'pas', 'personnes', 'peut', 'peu', 'pièce', 'plupart', 'pour', 'pourquoi', 'quand', 'que', 'quel', 'quelle', 'quelles', 'quels', 'qui', 'sa', 'sans', 'ses', 'seulement', 'si', 'sien', 'son', 'sont', 'sous', 'soyez sujet', 'sur', 'ta', 'tandis', 'tellement', 'tels', 'tes', 'ton', 'tous', 'tout', 'trop', 'très', 'tu', 'valeur', 'voie', 'voient', 'vont', 'votre', 'vous', 'vu', 'ça', 'étaient', 'état', 'étions', 'été', 'être'
-

cybervince - WRInaute impliqué

- Messages: 880
- Inscription: 1 Aoû 2004
sgaze a écrit: Mais c'est lourd...
C'est exactement ca le soucis.
Ca oblige à faire des actions manuelles.
-

cybervince - WRInaute impliqué

- Messages: 880
- Inscription: 1 Aoû 2004
Enfin pour en revenir au sujet, je cherchais plus à avoir des avis et des éventuels retour d'expérience par rapport à l'utilisation de la fonction MATCH de MySQL sur des gros phpBB, car en testant sur mon serveur chez moi, en fesant directement la requête en base ca m'a l'air assez rapide. (base avec 11000 messages)
13 messages
• Page 1 sur 1
Lectures recommandées sur ce thème :
- Système d'archives forum PHPBB...
- Comment optimiser un forum phpBB ?
- Optimiser le netlinking de phpbb avec du nofollow
- [ADVANCED] systeme de cache pour phpbb
- Aide pour optimiser mon forum phpbb
- Optimiser le code d'un forum phpbb pour rendre dynamique la title.
- optimiser un moteur de recherche interne
- Recherche système comparable à SPIP
- Recherche systeme petites annonces
- encore à la recherche d'un système de template
- Analyse du positionnement
AgentWebRanking est un logiciel professionnel qui permet d'analyser le positionnement d'un ou plusieurs sites dans plus de 300 moteurs de recherche dans le monde. Vous pouvez ainsi analyser les performances du référencement pour de nombreux mots-clés. - Transformer des simples citations de votre site en liens
Cet outil vous permet de trouver des pages citant votre site mais ne faisant pas (encore) de lien. Il suffira parfois d'un simple mail pour transformer cette simple citation en lien (backlink).
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités



