Référence pour la vue apg_plan_mgmt.dba_plans - Amazon Aurora

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Référence pour la vue apg_plan_mgmt.dba_plans

Les colonnes des informations des plans de la vue apg_plan_mgmt.dba_plans sont notamment les suivantes.

Colonne dba_plans Description
cardinality_error

Mesure de l'erreur entre la cardinalité estimée et la cardinalité réelle. La cardinalité désigne le nombre de lignes de table que le plan doit traiter. Si l'erreur de cardinalité est importante, la probabilité que le plan ne soit pas optimal augmente. Cette colonne est complétée par la fonction apg_plan_mgmt.evolve_plan_baselines.

compatibility_level

Niveau de fonctionnalité de l'optimiseur Aurora PostgreSQL.

created_by Utilisateur authentifié (session_user) qui a créé le plan.
enabled

Indicateur montrant si le plan est activé ou désactivé. Par défaut, tous les plans sont activés. Vous pouvez désactiver des plans pour empêcher l'optimiseur de les utiliser. Pour modifier cette valeur, utilisez la fonction apg_plan_mgmt.set_plan_enabled.

environment_variables

Paramètres et valeurs PostgreSQL Grand Unified Configuration (GUC) que l'optimiseur a remplacés au moment de la capture du plan.

estimated_startup_cost Coût estimé de la configuration de l'optimiseur avant que celui-ci fournisse des lignes d'une table.
estimated_total_cost Coût estimé de l'optimiseur pour la fourniture de la ligne finale du tableau.
execution_time_benefit_ms Avantage de l'activation du plan en termes de temps d'exécution, en millisecondes. Cette colonne est complétée par la fonction apg_plan_mgmt.evolve_plan_baselines.
execution_time_ms Durée d'exécution du plan estimée en millisecondes. Cette colonne est complétée par la fonction apg_plan_mgmt.evolve_plan_baselines.
has_side_effects Valeur indiquant que l'instruction SQL est une instruction de langage de manipulation de données (DML) ou une instruction SELECT contenant une fonction VOLATILE.
last_used Cette valeur est mise à jour à la date du jour chaque fois que le plan est exécuté ou lorsque le plan est le plan à coût minimal de l'optimiseur de requêtes. Cette valeur est stockée dans la mémoire partagée et vidée périodiquement sur le disque. Pour obtenir la valeur la plus récente, lisez la date dans la mémoire partagée en appelant la fonction apg_plan_mgmt.plan_last_used(sql_hash, plan_hash) au lieu de lire la valeur last_used. Pour plus d'informations, veuillez consulter le paramètre apg_plan_mgmt.plan_retention_period.
last_validated Date et heure les plus récentes auxquelles l'application a vérifié que le plan pouvait être recréé à l'aide de la fonction apg_plan_mgmt.validate_plans ou apg_plan_mgmt.evolve_plan_baselines.
last_verified Date et heure les plus récentes auxquelles la fonction apg_plan_mgmt.evolve_plan_baselines a vérifié qu'un plan était le plus performant pour les paramètres spécifiés.
origin

Indique la façon dont le plan a été capturé avec le paramètre apg_plan_mgmt.capture_plan_baselines. Les valeurs valides sont notamment les suivantes :

M – Le plan a été capturé au moyen de la capture manuelle.

A – Le plan a été capturé au moyen de la capture automatique.

param_list

Valeurs des paramètres qui ont été transférées à l'instruction si celle-ci est une instruction préparée.

plan_created Date et heure de création du plan.
plan_hash Identifiant du plan. La combinaison de plan_hash et sql_hash identifie de manière unique un plan spécifique.
plan_outline Représentation du plan utilisé pour recréer le plan d'exécution réel, indépendamment de la base de données. Les opérateurs de l'arborescence correspondent aux opérateurs qui apparaissent dans la sortie EXPLAIN.
planning_time_ms

Durée réelle d'exécution du planificateur en millisecondes. Cette colonne est complétée par la fonction apg_plan_mgmt.evolve_plan_baselines.

queryId Hachage d'instruction, tel que calculé par l'extension pg_stat_statements. Il ne s'agit pas d'un identifiant stable ou indépendant de la base de données dans la mesure où il dépend d'identifiants d'objet (OID). La valeur sera 0 si compute_query_id a pour valeur off lors de la capture du plan de requête.
sql_hash Valeur de hachage du texte de l'instruction SQL, normalisée avec les littéraux supprimés.
sql_text Texte complet de l'instruction SQL.
status

Statut du plan, qui détermine la manière dont l'optimiseur utilise un plan. Les valeurs valides sont notamment les suivantes.

  • Approved – Plan utilisable que l'optimiseur peut choisir d'exécuter. L'optimiseur exécute le plan à coût minimal à partir d'un ensemble de plans approuvés d'une instruction gérée (référence). Pour réinitialiser un plan sur le statut approuvé, utilisez la fonction apg_plan_mgmt.evolve_plan_baselines.

  • Unapproved – Plan capturé que vous n'avez pas vérifié en vue de son utilisation. Pour plus d'informations, consultez Évaluation des performances des plans.

  • Rejected – Plan que l'optimiseur n'utilisera pas. Pour plus d'informations, consultez Rejet ou désactivation de plans plus lents.

  • Preferred – Plan que vous avez identifié comme plan préféré à utiliser pour une instruction gérée.

    Si le plan à coût minimal de l'optimiseur n'est pas un plan approuvé ou un plan préféré, vous pouvez réduire le traitement lié à l'application du plan. À cette fin, définissez comme un sous-ensemble des plans approuvé Preferred. Si le plan à coût minimal de l'optimiseur n'est pas un plan Approved, un plan Preferred sera choisi avant un plan Approved.

    Pour réinitialiser un plan sur Preferred, utilisez la fonction apg_plan_mgmt.set_plan_status.

stmt_name Nom de l'instruction SQL au sein d'une instruction PREPARE. Cette valeur est une chaîne vide dans le cas d'une instruction préparée sans nom. Cette valeur est NULL dans le cas d'une instruction non préparée.
total_time_benefit_ms

Avantage de l'activation de ce plan en termes de durée totale, en millisecondes. Cette valeur prend en compte la durée de planification et la durée d'exécution.

Si cette valeur est négative, cela signifie que l'activation de ce plan est désavantageuse. Cette colonne est complétée par la fonction apg_plan_mgmt.evolve_plan_baselines.