Optimisation requète - group by

WRInaute discret
Bonjour,

je stocke dans une table des requètes effectuées sur le serveur.
ip | query | timestamp

je voulais extraire les requètes les plus populaires comme ceci:
select query , count(query)
from matable
group by query having count(query) > 100

Comme j'ai un nombre d'enregistrements assez conséquents (quasi 1 million sur deux ans), le serveur MySQL est au bord de l'agonie quand je lance la requète. Ca fait plus de 20 mins qu'il mouline et toujours rien.

Y aurait-il une requète plus efficace ?
 
WRInaute passionné
As-tu indiqué dans champs comme index ?
Utilises-tu le type de BD le plus approprié à la quantité de données stockées ?
 
WRInaute discret
Justement je n'ai aucune idée du type de bd à utiliser. Je suis en MyISAM.Sinon j'ai bien un index sur query.
 
Discussions similaires
Haut