Link Station > Section Forum > Dialogue avec le Staff >

[IDEE] Mots clés + recherche 3 lettres




Aller au Forum:
Notez ce sujet :

bonnes idées ?
oui
non
je ne sais plus
Voir les Résultats [Editer le Sondage (modérateurs seulement)]
Page(s) (2): [ 1   2   > ]   Sujet précédent   Sujet suivant
Auteur
Sujet    Tout développer | Tout contracter NOUVEAU SUJET    RÉPONDRE
Réduire ce messageEetrangeBanni(e)Niveau 6 · CinéphageRéférenceur Novice
Membre depuis
2003
Messages
485
Plus
Membre n°
8378
Inscription
22 Jan 2003
Sujets lancés
48
Ancienneté
97 %
Participation
38 %
[IDEE] Mots clés + recherche 3 lettresAncien message 23-01-2004 20:38
Pour faciliter les recherches sur le site, je propose de mettre des mots clés dans chaque nouveau topic, notamment en Section Technique.

Comme ça, hop, on trouve plus simplement les sujets qui intéressent.

Petit problème conséquent :
la recherche est actuellement limitée à des mots de 4 lettres minimum... du genre je cherche "mot clé" pour voir si l'idée à déjà été proposée... 2 mots de 3 lettres chacun... mal barré ça... (vous me direz certainement que je peux lancer une recherche sur "mots clef", mais "clef" est bien moins utilisé que "clé", enfin bref ceci n'est qu'un exemple).

Voilà en gros l'idée de ces petits mots qui aideraient sans aucun doute.

Bien entendu il faudrait définir des règles plus ou moins précises pour encore simplifier la recherche :
- mots aux singuliers
- 3 lettres (ou 4 mais parfois ce n'est pas simple) au minimum
- plusieurs synonymes, mais pas non plus une bible complète
- être le plus précis possible, mais cela va de soit.
etc...

Pour finir, un exemple :
en ce moment j'essaie de me renseigner sur les live cd linux, il serait alors bon que je mette en fin de post :

mots clés : livecd live linux mandrake etrange mandrakemove knoppix

ps : vous l'aurez bien vu, "etrange" s'est glissé parmi les autres, et constitue ~ici~ un abus; à éviter donc.

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messageKKissTheFutureConnectéGuruNiveau 19 · ChroniqueurRéférenceur Novice
Membre depuis
2002
Messages
11547
Plus
Membre n°
6223
Inscription
17 Nov 2002
Localisation
Arras
Âge
46 ans
Sujets lancés
108
Ancienneté
98 %
Participation
95 %
Ancien message 23-01-2004 20:43
hummm pourquoi pas, mais bon ... t'as mangé un elephant ce soir ?

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messageDdom95MaitreNiveau 16 · Critique de comptoirRéférenceur Appliqué
Membre depuis
2002
Messages
4597
Plus
Membre n°
2839
Inscription
05 Jul 2002
Localisation
RP
Sujets lancés
113
Ancienneté
99 %
Participation
79 %
Ancien message 23-01-2004 20:45
Pour info, étrange, la recherche n'est pas vraiment limitée à des mots de 4 lettres.
En effet, il suffit d'ajouter * devant et/ou derrière pour que les mots de 2 et 3 lettres soient pris en compte dans la recherche.


__________________

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messageLludovikeConnectéGuruNiveau 27 · FigurantRéférenceur Appliqué
Membre depuis
2002
Messages
14712
Plus
Membre n°
2390
Inscription
19 Jun 2002
Localisation
boyau rouge ( eleve a la chimay et au jack)
Âge
60 ans
Sujets lancés
254
Ancienneté
99 %
Participation
100 %
Ancien message 23-01-2004 20:54


sinon, j'aimerais bien voir ce bouton clignotant ou bien violet fluo pour bien le voir , dans le meme style que

le oxmoiens seraient peut etre plus enclins a faire des recherches plutot que poster plusieur fois le meme sujet

__________________
ludovike



Signaler ce message à un modérateur | IP: Logguée

Réduire ce messageCcastypiqueConfirméNiveau 11 · CinéphileRéférenceur Assidu
Membre depuis
2002
Messages
1100
Plus
Membre n°
802
Inscription
28 Mar 2002
Localisation
------>
Âge
112 ans
Sujets lancés
120
Ancienneté
100 %
Participation
53 %
Ancien message 23-01-2004 21:04
bah moi, je me suis toujours demandé pourquoi le nombre minimum de lettres pour une recherche était de 4 lettres

Je trouverais tellement plus simple de réduire ce chiffre à trois, car vous vous rendez pas compte le nombre de mots en trois lettres qui existent et que, justement, on ne peut chercher quand ça nous prend

Parce que l'histoire de l'astérisque, c'est bine beau, mais ne permet en tout cas pas une recherche detaillée et réduite au(x) mot(s) en moins de quatre lettres que l'on recherche...

Je soumets donc l'idée, moins contraignante que celle d'étrange, de pouvoir effectuer une recherche avec des mots de trois lettres, abaissant donc le minimum de mots pour une recherche à deux.

Ca pose un problème technique ? Ou de bande passante ? Ou que sais-je ?

__________________

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messageZZakathGuruNiveau 29 · CascadeurRéférenceur Aguerri
Membre depuis
2002
Messages
9866
Plus
Membre n°
7213
Inscription
15 Dec 2002
Localisation
Copenhague
Sujets lancés
426
Ancienneté
97 %
Participation
92 %
Ancien message 23-01-2004 21:36
C'est relatif à la taille de la base de données. En descendant à 3 lettres, tu exploses la taille en comptant tous les "les", les "ici", les "ces", etc... Donc comme la taille est grosse, tu prends de la mémoire à soul^ et surtout beaucoup de temps CPU...

Le sujet avait déjà été discuté (augmenter la recherche aux mots de 3 lettres) et soul^ avait dit "non"...

__________________
Allez jeter un œil à mon portfolio !

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messagesoul^keeperConnectéAdministrateurNiveau 50 · OscariséRéférenceur Légendaire
Membre depuis
2002
Messages
17300
Plus
Membre n°
1
Inscription
22 Feb 2002
Localisation
La Défense
Âge
49 ans
Sujets lancés
2916
Ancienneté
100 %
Participation
100 %
Ancien message 23-01-2004 21:37
Message écrit par dom95, le 23-01-2004 à 20:45
Pour info, étrange, la recherche n'est pas vraiment limitée à des mots de 4 lettres.
En effet, il suffit d'ajouter * devant et/ou derrière pour que les mots de 2 et 3 lettres soient pris en compte dans la recherche.



Non c'est faux. C'est une rumeur qui perdure et que je m'efforce de démentir à chaque fois. C'est un peu long à expliquer par écrit, mais le moteur de recherche indexe les mots de 4 à 15 caractères. Ni plus ni moins. Un mot comme "de" ne sera donc pas indexé, et le mot "géographiquement" non plus. Avec ou sans * ... L'astérisque permet de remplacer une suite indéfinie de caractères, mais comme seuls les mots de 4 à 15 caractères sont dans l'index, seuls les mots de ce même intervalle peuvent être trouvés, avec * ou pas.
Vous ne trouverez donc jamais le mot "mot" en cherchant "mot*". Au mieux vous trouverez "mots" ou "moteur" etc...

Message écrit par castypique, le 23-01-2004 à 21:04
bah moi, je me suis toujours demandé pourquoi le nombre minimum de lettres pour une recherche était de 4 lettres

Je trouverais tellement plus simple de réduire ce chiffre à trois, car vous vous rendez pas compte le nombre de mots en trois lettres qui existent et que, justement, on ne peut chercher quand ça nous prend

Parce que l'histoire de l'astérisque, c'est bine beau, mais ne permet en tout cas pas une recherche detaillée et réduite au(x) mot(s) en moins de quatre lettres que l'on recherche...

Je soumets donc l'idée, moins contraignante que celle d'étrange, de pouvoir effectuer une recherche avec des mots de trois lettres, abaissant donc le minimum de mots pour une recherche à deux.

Ca pose un problème technique ? Ou de bande passante ? Ou que sais-je ?


Pour des raisons d'efficacité, tout simplement.
Vous n'avez pas idée de la place occupée par l'index. L'idée n'est pas que l'index soit plus volumineux que le contenu lui même! Il est déjà énorme, en indexant les mots de 3 lettres, l'index grossirait de façon exponentielle, ce qui engendrerait des temps de recherche proportionnels.... Ce n'est donc pas envisageable, non seulement pour des raisons de volume de données complètement abbhérant, de performances dégradées, mais aussi d'efficacité : imaginez chercher "et*".... c'est les 3/4 des 330000 posts du forum que vous auriez en résultat.... Pas très efficace!

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messageEetrangeBanni(e)Niveau 6 · CinéphageRéférenceur Novice
Membre depuis
2003
Messages
485
Plus
Membre n°
8378
Inscription
22 Jan 2003
Sujets lancés
48
Ancienneté
97 %
Participation
38 %
Ancien message 23-01-2004 21:42
ok pour les 3lettres, explications justifiées.

Mais moi je voudrais bien instaurer les règles des mots clés, c'est tellement plus simple pour une recherche (du moins pour ceux qui l'utilisent...).

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messagesoul^keeperConnectéAdministrateurNiveau 50 · OscariséRéférenceur Légendaire
Membre depuis
2002
Messages
17300
Plus
Membre n°
1
Inscription
22 Feb 2002
Localisation
La Défense
Âge
49 ans
Sujets lancés
2916
Ancienneté
100 %
Participation
100 %
Allez... petit approfondissementAncien message 23-01-2004 21:57
Ajout... pour mieux comprendre...

DICTIONNAIRE
Il faut savoir que le moteur de recherche ne cherche pas dans les posts, mais dans un dictionnaire, qui est constitué justement par les mots de 4 à 15 caractères trouvés dans les posts. En fait à chaque fois qu'un mot "nouveau" est posté, il entre dans le dictionnaire, avec une étiquette (numéro), pour prendre moins de place. Donc chaque mot est associé à un nombre, ça c'est pour le dictionnaire.

INDEX
Ensuite est créé l'index. L'index est l'association des mots avec les numéros de posts dans lesquels ils se trouvent....
Je donne un exemple. Si le post n°335087 du forum contient "ceci est un test", seuls les mots "ceci" et "test" seront ajoutés au dictionnaire (s'ils ne le sont pas déjà) avec un numéro, mettons ceci=12015 et test=12016.
Et bien dans l'index, il y aura une entrée qui dit "le mot 12015 se trouve dans le post 335087" et "le mot 12016 se trouve dans le post 335087" (l'association est directe hein : 12015-335087 & 12016-335087)

MOTEUR DE RECHERCHE
Quand vous utilisez le moteur de recherche maintenant, vous tapez une expression, disons que vous cherchez "test".
Le forum va alors chercher ce mot dans le dictionnaire, et va trouver que chercher "test" dans le forum revient à chercher tous les posts qui contiennent le mot 12016.
On cherche alors dans l'index tous les numéros de posts associés à 12016 et on trouve évidemment 335087 (et les autres s'il y en a).
Le moteur affiche alors au choix les résultats
- par message (facile, c'est ce qu'il trouve directement dans l'index)
- par thread (le plus courant) en passant par une étape supplémentaire de recherche du n° de thread associé au n° de post 335087.

Voilà...

Donc si vous avez bien compris ce fonctionnement simple, vous comprenez du même coup :

- le coup de l'astérisque : puisque le moteur de recherche cherche uniquement les résultats dans l'index, et que l'index est construit à partir du dictionnaire qui ne comprend QUE les mots de 4 à 15 caractères, il sera impossible de trouver des posts avec des mots de 3 lettres, même en feintant par un astérisque: dans ce cas de figure, la recherche est effectuée différement : on commence par chercher dans le dictionnaire tous les numéros de mots de 4 à 15 lettres représentées par le masque de recherche, et on fait une recherche globale de tous les numéros de posts contenant au moins 1 des numéros de mots et hop on a les résultats.

- qu'indexer les mots très courts augmente ENORMEMENT le dictionnaire, augmente encore beaucoup plus l'index... et donc quand vous utilisez le moteur de recherche, PEU IMPORTE CE QUE VOUS CHERCHEZ, il faut extraire de l'index les n° de posts correspondant aux numéros de mots de votre expression de recherche, et que donc, plus l'index est énorme, plus ça prend du temps. Dites vous bien qu'ajouter un seul caractère à l'index (les mots de 3 lettres) reviendrait à doubler facilement l'index, et donc à doubler la ressource CPU nécessaire à CHAQUE recherche...

J'espère que vous comprenez mieux maintenant

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messageFflemingSuper ModerateurNiveau 29 · CascadeurRéférenceur Assidu
Membre depuis
2003
Messages
19502
Plus
Membre n°
7849
Inscription
06 Jan 2003
Localisation
Augustoritum
Sujets lancés
319
Ancienneté
97 %
Participation
100 %
Re: Allez... petit approfondissementAncien message 23-01-2004 22:01
Message écrit par soul^keeper, le 23-01-2004 à 21:57
J'espère que vous comprenez mieux maintenant


Tout à fait chef !

Merci de ces précisions

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messageZZakathGuruNiveau 29 · CascadeurRéférenceur Aguerri
Membre depuis
2002
Messages
9866
Plus
Membre n°
7213
Inscription
15 Dec 2002
Localisation
Copenhague
Sujets lancés
426
Ancienneté
97 %
Participation
92 %
Ancien message 23-01-2004 22:01
C'est joli, je trouve : énorme complexité spatiale mais ridicule complexité temporelle... A titre indicatif, je serais curieux de savoir quelle taille fait ton index et combien d'entrées il y a dans ton dictionnaire.

__________________
Allez jeter un œil à mon portfolio !

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messageFFeelbackExpertNiveau 13 · Collectionneur DVDRéférenceur Appliqué
Membre depuis
2002
Messages
2694
Plus
Membre n°
6569
Inscription
26 Nov 2002
Localisation
Parlah
Âge
52 ans
Sujets lancés
160
Ancienneté
97 %
Participation
69 %
Ancien message 23-01-2004 22:03
understood mister Patron !

Et merci pour l'explication de texte !

__________________
</img>

On est libre de croire qu'on est con, mais on est con de croire qu'on est libre.

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messagesoul^keeperConnectéAdministrateurNiveau 50 · OscariséRéférenceur Légendaire
Membre depuis
2002
Messages
17300
Plus
Membre n°
1
Inscription
22 Feb 2002
Localisation
La Défense
Âge
49 ans
Sujets lancés
2916
Ancienneté
100 %
Participation
100 %
Ancien message 23-01-2004 22:12
Message écrit par Zakath, le 23-01-2004 à 22:01
C'est joli, je trouve : énorme complexité spatiale mais ridicule complexité temporelle... A titre indicatif, je serais curieux de savoir quelle taille fait ton index et combien d'entrées il y a dans ton dictionnaire.



Et bien tu vas haluciner :

Place occupée par les POSTS : 147,5 Mo (353606 posts)
Place occupée par les THREADS : 3,2 Mo (23399 threads)
Place occupée par le DICTIONNAIRE : 26,7 Mo (374432 mots ! Le Larousse a du soucis à se faire lol)
Place occupée par l'INDEX : 182,5 Mo (8021045 associations!)

On s'aperçoit donc que pour des raisons de performance et d'efficacité, pour 150 Mo de données réelles, il y a plus de 200Mo de "metadata" rien que pour que le moteur de recherche soit rapide.... Comprenez bien que les metadata ne servent à rien, si ce n'est accélerer le traitement : si je supprimais la fonction recherche du forum, la base de données serait allégée d'autant....
Donc imaginez en indexant les mots de 3 lettres, c'est ce que je disais plus haut, pour 150Mo de données, on aurait 300Mo de metadata pour le moteur de recherche. Ce serait un peu ridicule!

Dernière chose : par défaut vBulletin indexe les mots de 5 à 14 caractères (de mémoire)... J'avais déjà ramené à 4 et augmenté à 15 ce qui avait fait augmenter la taille du dictionnaire de façon exponentielle... Je ne parle même pas de l'index

Je me fous de la place, c'est pour ça que je l'ai fait... Même 300Mo ça me dérangererait pas... mais après c'est une question de temps de recherche... le CPU et la mémoire seraient insuffisant pour chercher dans 300Mo de données à chaque requête... C'est un bi-xeon voire même un quadri-xeon avec 2Go de RAM qui serait correctement taillés pour ça....

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messageZZakathGuruNiveau 29 · CascadeurRéférenceur Aguerri
Membre depuis
2002
Messages
9866
Plus
Membre n°
7213
Inscription
15 Dec 2002
Localisation
Copenhague
Sujets lancés
426
Ancienneté
97 %
Participation
92 %
Ancien message 23-01-2004 22:15
Effectivement...

Mais je suppose que les données sont sous forme arborescente, donc avec une base de donnée bien indexée, la recherche se fait en un temps logarithmique, non ?

Donc, doubler la taille de la base reviendrait à augmenter de ln2 le temps de recherche, donc l'usage CPU.

Erreur, mais où ?

__________________
Allez jeter un œil à mon portfolio !

Signaler ce message à un modérateur | IP: Logguée

Réduire ce messagesoul^keeperConnectéAdministrateurNiveau 50 · OscariséRéférenceur Légendaire
Membre depuis
2002
Messages
17300
Plus
Membre n°
1
Inscription
22 Feb 2002
Localisation
La Défense
Âge
49 ans
Sujets lancés
2916
Ancienneté
100 %
Participation
100 %
Ancien message 23-01-2004 22:17
Message écrit par soul^keeper, le 23-01-2004 à 22:12
Place occupée par l'INDEX : 182,5 Mo (8021045 associations!)


En clair, à chaque fois que vous faites une recherche, vous demandez au processeur de faire le tri dans plus de 8 millions d'entrées... et de vous afficher que celles qui vous intéressent...

On a l'impression qu'on cherche dans 330000 posts mais non... on cherche dans 8 millions de fiches.... j'estime qu'on dépasserait facilement les 16 millions de fiches en ajoutant les mots de 3 lettres.

Signaler ce message à un modérateur | IP: Logguée

Il est actuellement 18:22 (GMT) NOUVEAU SUJET    RÉPONDRE   
Page(s) (2): [ 1   2   > ]  Sujet précédent   Sujet suivant
Link Station > Section Forum > Dialogue avec le Staff > [IDEE] Mots clés + recherche 3 lettres

Aller au Forum:
Notez ce sujet :


Réponse rapide
Afficher une version imprimable | Chercher dans ce sujet | Envoyer cette page par email | S'inscrire à ce sujet | Télécharger ce sujet
Règles du forum :
Créer de nouveaux sujets
Répondre aux messages
Attacher des fichiers
Editer vos messages
: not autorisé
: not autorisé
: not autorisé
: not autorisé
Le Code HTML est OFF
Le BBCode est ON
Les Smileys sont ONs
Le code [IMG] est ON
Page générée en 0.057968 secondes en exécutant 53 requêtes SQL.
Apache - Compression GZIP : Activée.