Utiliser le conseiller d'index

Cette page décrit le conseiller d'index Cloud SQL pour MySQL et explique comment afficher et appliquer ses recommandations d'index.

Cloud SQL pour MySQL propose un conseiller d'index qui suit les requêtes traitées par votre base de données. Il analyse régulièrement ces requêtes pour recommander de nouveaux index pouvant améliorer leurs performances.

Vous pouvez afficher et interroger les recommandations du conseiller d'index sous forme de table, ou demander une analyse et un rapport à la demande à tout moment.

Activer les recommandations du conseiller d'index

Pour activer les recommandations de conseiller d'index, configurez Gemini dans les bases de données.

Désactiver les recommandations du conseiller d'index

Pour désactiver les recommandations du conseiller d'index, supprimez l'option cloudsql_index_advisor de votre instance Cloud SQL pour PostgreSQL. Si vous avez activé l'option performance_schema pour le conseiller d'index, vous pouvez choisir de laisser l'option performance_schema activée ou de la désactiver.

Pour en savoir plus sur la suppression d'une option de votre instance, consultez la page Configurer des options de base de données.

Afficher les recommandations du conseiller d'index

Cloud SQL pour MySQL exécute automatiquement et régulièrement l'analyse du conseiller d'index.

Vous pouvez lire ses résultats dans le tableau suivant, situé dans la base de données mysql :

  • mysql.cloudsql_db_advisor_recommended_indexes : répertorie les nouveaux index recommandés pour chaque base de données. Il comprend également des estimations de l'espace de stockage requis pour chaque index et du nombre de requêtes que chaque index peut affecter.

Par exemple, pour afficher les résultats de l'analyse de recommandation d'index la plus récente, au format tableau, exécutez cette requête :

SELECT * FROM mysql.cloudsql_db_advisor_recommended_indexes;

Appliquer les recommandations du conseiller d'index

La colonne index de la table mysql.cloudsql_db_advisor_recommended_indexes contient, dans chaque ligne, une instruction DDL CREATE INDEX MySQL complète pour générer l'index recommandé dans cette ligne.

Pour appliquer la recommandation de cette ligne, exécutez cette instruction LDD, exactement comme présenté.

Par exemple, considérons ce résultat de l'exécution manuelle d'une analyse à l'aide de la requête décrite dans la section précédente :

                    index                   | estimated_storage_size_in_mb
--------------------------------------------+------------------------------
 CREATE INDEX ON "School"."Students"("age") |                            3
(1 row)

Ce rapport ne contient qu'une seule recommandation : ajouter un indice à une seule colonne sur la colonne age dans le tableau Students du schéma School. Pour appliquer ce conseil, saisissez une requête DDL telle qu'elle est représentée dans le rapport :

CREATE INDEX ON "School"."Students"("age");

Configurer le conseiller d'index

Bien que le conseiller d'index soit conçu pour fonctionner dans la plupart des cas avec ses paramètres par défaut, vous pouvez affiner son comportement en définissant différentes options de base de données.

Par défaut, le conseiller d'index s'exécute une fois toutes les 24 heures. Vous pouvez modifier l'heure de la programmation automatique à l'aide de l'option cloudsql_index_advisor_auto_advisor_schedule ou exécuter une analyse ad hoc sur une date et une heure spécifiques à l'aide de l'option cloudsql_index_advisor_run_at_timestamp. Pour en savoir plus, consultez la section Options du conseiller d'index.