vendredi 18 janvier 2013

Optimisation de vos requêtes MySQL


Réduisez le nombre de colonnes dans vos SELECT

Si vous êtes adeptes du SELECT *, soyez attentif à la quantité de données que vous retournent vos requêtes. Si votre script n’utilise que deux champs, utilisez plutot SELECT champ1, champ2 [...].

Limitez l’utilisation des jointures et préférerez les sous-requêtes


Si vous utilisez des jointures, attention à ne pas inclure trop de tables dans vos requêtes SQL. En effet, une jointure fait un produit cartésien des enregistrements des tables avant d’exécuter la ou les conditions. Vos tables de tri temporaires peuvent donc devenir très volumineuses.
Si vous avez besoin de beaucoup de jointures sur d’importantes tables, utilisez plutôt dessous-requêtes.

Choix du type de moteur de table

Chaque application web peut avoir des besoins spécifiques en matière de performances et de fonctionnalités, il faut savoir que chaque type de moteur de table (MyIsam et InnoDb par exemple) a des particularités propre à chacun.
Puisqu’il ne sert à rien de réinventer un comparatif bien réalisé, voici un article sur tux-planet.fr qui présente les deux types de moteurs MyIsam et InnoDb : Mysql : les principales différences entre MyISAM et InnoDB

Aucun commentaire:

Enregistrer un commentaire