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 :

Comment optimiser les COUNT ?


Sujet :

PHP & Base de données

  1. #1
    Membre averti Avatar de DavidDeTroyes
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2005
    Messages : 305
    Points : 348
    Points
    348
    Par défaut Comment optimiser les COUNT ?
    Bonjour,

    Je dois afficher 12 requetes contenant les mots COUNT et DISTINCT sur une meme page de stat mais ca me prend presque 28 secondes a l'affichage !!!

    Mes requetes pointes bien sur des champs primaire ou indexé, pourtant !

    Quand je vois le forum de DVP qui affichent je sais pas combien de requete COUNT en presque rien, je bave...

    Comment ils font ?

    Ils passent par une table tampon ? Il existe des fonctions secretes qui optimise les count ?

    J'ai essayé mysql_result_count mais ca change pas grand chose...

    Quelqu'un aurai une idée ?

    Merci d'avance
    "Les cons ca ose tout, c'est même à ca qu'on les reconnait" M. AUDIARD
    "L'intelligence, on croit toujours en avoir assez, vu que c'est avec ça qu'on juge" COLUCHE

    Spidercochon ! Spidercochon !
    Il peut marcher au plafond.
    Est-ce qu'il peut tisser une toile ?
    Bien sûr que non c'est un cochon
    Prends garde Spidercochon est là...

  2. #2
    Membre expert

    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    1 581
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2002
    Messages : 1 581
    Points : 3 016
    Points
    3 016
    Par défaut
    Cela me paraît très étrange, es-tu bien certain de ne faire que des requêtes du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT COUNT(*) FROM UneTable
    les COUNT sont en général super rapides, tu ajoutes sans doute des clauses WHERE non?.

  3. #3
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Es-tu sur que c'est mysql qui prend autant de temps ?
    As tu fais un ANALYZE TABLE sur toutes les tables de ta base ?
    As tu fais un EXPLAIN de tes requetes qui prennent du temps ?

  4. #4
    Membre averti Avatar de DavidDeTroyes
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    305
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Aube (Champagne Ardenne)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2005
    Messages : 305
    Points : 348
    Points
    348
    Par défaut
    Citation Envoyé par stephane eyskens
    Cela me paraît très étrange, es-tu bien certain de ne faire que des requêtes du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT COUNT(*) FROM UneTable
    les COUNT sont en général super rapides, tu ajoutes sans doute des clauses WHERE non?.
    Oui il y en as pas mal... Ca joue ?

    Citation Envoyé par Mr N.
    Es-tu sur que c'est mysql qui prend autant de temps ?
    As tu fais un ANALYZE TABLE sur toutes les tables de ta base ?
    As tu fais un EXPLAIN de tes requetes qui prennent du temps ?
    Non mais je vais regarder ca de plus pres... Je fonce sur Google.

    Merci à vous deux
    "Les cons ca ose tout, c'est même à ca qu'on les reconnait" M. AUDIARD
    "L'intelligence, on croit toujours en avoir assez, vu que c'est avec ça qu'on juge" COLUCHE

    Spidercochon ! Spidercochon !
    Il peut marcher au plafond.
    Est-ce qu'il peut tisser une toile ?
    Bien sûr que non c'est un cochon
    Prends garde Spidercochon est là...

  5. #5
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    oublie google, dev.mysql.com est suffisant

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    343
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 343
    Points : 392
    Points
    392
    Par défaut
    Je dois afficher 12 requetes contenant les mots COUNT et DISTINCT sur une meme page de stat mais ca me prend presque 28 secondes a l'affichage !!!
    En revanche les DISTINCT sont très côuteux...

  7. #7
    Membre éclairé Avatar de Hervé Saladin
    Homme Profil pro
    Ingénieur d'études en développement et déploiement d'applications
    Inscrit en
    Décembre 2004
    Messages
    647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur d'études en développement et déploiement d'applications
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2004
    Messages : 647
    Points : 799
    Points
    799
    Par défaut
    fais voir le code sql de tes requetes ?
    question subsidiaire : t'as un serveur digne de ce nom niveau perfs ? pasque 28 secondes ...

Discussions similaires

  1. [AC-2003] importation de donnée excel vers access : comment optimiser les tables ?
    Par pshd22 dans le forum Requêtes et SQL.
    Réponses: 6
    Dernier message: 31/03/2009, 18h17
  2. Réponses: 5
    Dernier message: 18/07/2008, 12h40
  3. Comment optimiser les performances de mon PC ?
    Par Celebrate dans le forum Windows XP
    Réponses: 6
    Dernier message: 16/07/2008, 22h08
  4. Comment optimiser les temps de réponse d'une requête ?
    Par renaudjuif dans le forum Requêtes
    Réponses: 3
    Dernier message: 19/02/2007, 14h12
  5. [XSLT] Comment optimiser les traitements XML/XSL ?
    Par thibaut06 dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 24/03/2006, 16h39

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