IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Créer un moteur de recherche par mots clés rapide PHP


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2007
    Messages : 74
    Par défaut Créer un moteur de recherche par mots clés rapide PHP
    Bonjour,

    j'en appel à votre savoir faire pour me donner les bonnes pistes à suivre.
    Je développe actuellement un site intranet pour mon entreprise contenant des fiches produits. Jusqu'à maintenant le moteur de recherche était créé à l'aide de requêtes à base de LIKE '%mot clé%' OR LIKE '%mot clé 2%' ce qui marchait très bien au début mais lorsque désormais la base pèse 3Go avec plus de 80000 fiches produits je peux vous dire que la pauvre base de données souffre un peu lors de la requête.

    En faisant pas mal de recherches, j'ai essayé de trouvé comme certains site faisaient pour trouver un résultats en moins de 3 sec sur des bases énormes.

    Apparemment lors de l'ajout d'une fiche celles-ci sont explosées en mots clés qui sont stockés dans la base et si j'ai bien compris lors de la recherche il suffit de trouvé les mots clés déjà indexés et de sortir les fiches produit correspondantes.

    Je ne sais pas si j'ai été clair ni si j'ai bien compris mais si quelqu'un pouvait m'expliquer le procédé en détail ou m'indiquer un lien qui l'explique ça serait super ...

    Pour résumé je cherche une solution pour faire un moteur de recherche par mots clés ultra rapide en PHP/MySql.

    Un grand merci d'avance à celui qui pourra m'éclairer !!!

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Un recherche FULLTEXT serait peut être plus rapide qu'un LIKE.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2007
    Messages : 74
    Par défaut
    Merci pour ta réponse rapide mais ça reste toujours trop lourd, je recherche vraiment la solution par indexation de mot clé en base (je ne sais pas si elle s'appelle comme ça )

  4. #4
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2009
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2009
    Messages : 44
    Par défaut
    salut

    avant tous, il serait intéressant de connaitre un peu ton modèle de base.
    Les fiches sont indexé en catégorie, sous catégorie,.... via des tables, idem pour les mots clés et autres.

    Les types index(numérique, texte, binaire), les verrous et autres.

    Le premier problème viens en général de la conception de la db.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2007
    Messages : 74
    Par défaut
    Bonjour,

    Et bien disons que dans ce cas précis le modèle est très simple puisqu'il n'y a aucune jointure de table.
    je ne peux pas trop déballer l'architecture de la base (règlement intérieur) mais la table sur laquelle la recherche se fait est du type :

    id - intitule - description - reférence - .....

    Je veux lancer mes recherches sur intitule et description.

    intitule étant un varchar (255) et description un gros bloc de texte.

    Je pensais donc exploser les intitulés et les descriptions en mots clés et les stocker dans une autre table où je ferai mes recherches.

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    erci pour ta réponse rapide mais ça reste toujours trop lourd, je recherche vraiment la solution par indexation de mot clé en base
    Avant de dire que c'est lourd l'as tu testé ?
    Le FULLTEXT est une recherche indexée.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2007
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2007
    Messages : 74
    Par défaut
    LOL oui Sabotage j'ai testé, c'est une des méthodes classiques, je cherche un truc encore plus performant.

Discussions similaires

  1. Recherche par mot clés - Php -Mysql
    Par pod1978 dans le forum Requêtes
    Réponses: 8
    Dernier message: 22/09/2006, 13h01
  2. recherche par mots-clés dans base access
    Par syber72 dans le forum Access
    Réponses: 2
    Dernier message: 07/03/2006, 13h53
  3. [MySQL] recherche par mots clés
    Par spartan dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 16/02/2006, 16h11
  4. [Tableaux] Moteur de recherche par mot clés
    Par Nee dans le forum Langage
    Réponses: 4
    Dernier message: 20/01/2006, 11h30
  5. Recherche par mots clés
    Par legillou dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 17/06/2005, 10h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo