LeMagIT : Pouvez vous détaille Query analysis et préciser en quoi c'est important pour les développeurs?
Robin Schumacher : Le premier problème de performance que l'on rencontre sur les systèmes motorisés par des bases de données est un mauvais acheminement des instructions du système. Rien n'est plus pénalisant qu'un code SQL mal optimisé. Trouver ce code boiteux est généralement un challenge pour les développeurs. C'est mon parcours de 18 années d'administrateur qui parle. Cette tâche est d'autant plus ardue avec MySQL car la base ne bénéficie pas de statistiques sur le traitement et le bon acheminement des requêtes. Il n'y a aucun moyen de déterminer quelle requête se comporte mal ou encore pourquoi telle instruction est exécutée une centaine de fois par heure alors qu'elle ne devrait pas.
Avec Query Analyser, les développeurs peuvent désormais comprendre pourquoi cela fonctionne mal en identifiant les instructions litigieuses, les analyser et transmettre des informations vers d'autres outils qui interrogeront le code. Ils ainsi détecteront le mauvais comportement pour enfin pouvoir le corriger.
Dans mon ancienne entreprise, nous étions deux à nous occuper de 120 serveurs. Comment faire pour identifier la mauvaise instruction sur chaque serveur? Query Analyser a aussi été développé pour répondre à ce scenario et coller aux possibilités de MySQL en environnement distribué. La base s'exécute sur plusieurs machines. Lors d'une panne, il faut passer au crible chaque serveur un à un.
Cela est très chronophage. Query Analyser les scanne dans leur ensemble.
Donc, vous installez, vous spécifiez la localisation des serveurs MySQL et cela ressort tous les défauts de code de tous les serveurs.
[ Ecouter Robin Schumacher au sujet des points de contrôles de Query Analyser ]
Cela signifie que l'on pourrait utiliser Query Analyser comme une forme de SLA ?
Nous avons quelques demandes de clients sur ce sujet […] Parmi les points de contrôle, on retrouve la durée de chaque requête et la collecte d'information sur cette latence. Et on peut y appliquer des filtres afin de mettre en valeur les données clés. Ou affiner ce filtre en fonction des données que vous souhaitez. Query Analyser est vraiment utile pour les développeurs lors de phases de test.
Vous pouvez activer, configurer les serveurs et charger les applications, installer les outils de test pour simuler la charges par exemple. […] Cela s'adresse uniquement aux abonnés de l'offre Entreprise, et uniquement à ceux abonnés à une formule Gold.
LeMagIT : Falcon [le prochain moteur de MySQL, NDLR] supportera-t-il Query Analysis ?
Oui, il fournira le même niveau de statistique avec Falcon. Quelque que soit le moteur choisi d'ailleurs.
LeMagIT : Après deux ans de développement, la version 5.1 est toujours au stade de la Release Candidate. Quand est-il de la roadmap?
Une version 5.1.30 qui est une GA (General Availibility) version est en cours. La 5.1.28 est la version actuellement disponible en téléchargement. Nous sommes en train de tester la 5.1.30 en interne. Nous n'avons identifié que quelques petits bogues, mais nous pensons que ce ne sera pas handicapant pour le sortie de la GA. La date limite de sa sortie est programmée au 6 décembre, mais je pense que nous pourrons la livrer à la fin du mois de novembre.














