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.
Mises à jour de gestion du plan SQL de requêtes Aurora Postgre
L' AWS apg_plan_mgmt
extension fournit à votre cluster de SQL base de données Aurora Postgre la fonctionnalité de gestion du plan de requêtes. Il vous permet de gérer les plans d'exécution des requêtes générés par l'optimiseur pour vos SQL applications pour une meilleure stabilité et pour éviter les régressions. Pour plus d'informations, consultez la section Gestion des plans d'exécution des requêtes pour Aurora Postgre SQL dans le guide de l'utilisateur Amazon Aurora.
Rubriques
- Postgrer SQL 16 versions
- SQLPostgre15 versions
- Postgre SQL 14 versions
- SQLPostgre13 versions
- SQLPostgre12 versions
- Version 2.3 de l'extension Aurora Postgre SQL apg_plan_mgmt
- Version 2.1 de l'extension Aurora Postgre SQL apg_plan_mgmt
- Version 2.0 de l'extension Aurora Postgre SQL apg_plan_mgmt
- Version 1.0.1 de l'extension Aurora Postgre SQL apg_plan_mgmt
Postgrer SQL 16 versions
Rubriques
apg_plan_mgmt version 2.7 pour Aurora Postgre16.3 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.7 pour Aurora Postgre SQL 16.3 sont les suivantes :
Nouvelles fonctionnalités
Vous n'avez plus besoin de mettre à jour le
plan_hash_version
. Après la mise à niveau du moteur de base de données, les nouvelles fonctionnalités QPM sont automatiquement activées. Vous n'avez aucune action à effectuer pour que de nouvelles fonctionnalités soient disponibles.
Améliorations supplémentaires
Correction d'un problème lié à l'application des QPM plans contenant plus de 64 tables partitionnées.
Correction d'un problème lié à l'application des QPM plans contenant l'opérateur Ajouter.
Correction d'un problème avec QPM validate_plans avec l'action update_plan_hash.
apg_plan_mgmt version 2.6 pour Aurora Postgrer 16.2 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.6 pour Aurora Postgre SQL 16.2 sont les suivantes :
Nouvelles fonctionnalités
QPMpeut appliquer des plans comportant des opérateurs d'agrégation.
Améliorations supplémentaires
Correction d'un problème en raison duquel la suppression d'une base de données ne supprimait pas les plans capturés associés de la mémoire partagée.
Correction d'un problème lié à l'application des plans contenant des vues.
Améliorations apportées à l'application du plan Parallel Append.
Correction d'un problème lié à la capture du plan.
-
Correction d'un problème lié à l'application des plans contenant des nœuds de collecte.
apg_plan_mgmt version 2.6 pour Aurora Postgre16.1 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.6 pour Aurora Postgre SQL 16.1 sont les suivantes :
Nouvelles fonctionnalités
Les structures de plan seront mises à jour avec la dernière version du format dans le cadre de l’action
update_plan_hash
pour la fonctionapg_plan_mgmt.validate_plans
.Prise en charge ajoutée de l’application de l’ajout parallèle dans le cadre de l’application des requêtes parallèles. Pour appliquer correctement les nœuds d’ajout parallèle, vous devez effectuer les opérations suivantes :
Définissez
apg_plan_mgmt.plan_hash_version
sur 5.Appelez
apg_plan_mgmt.validate_plans('update_plan_hash')
.
Améliorations supplémentaires
-
Amélioration des performances dans le calcul du hachage du plan.
-
Utilisation améliorée de la mémoire pour les structures de plan contenant des sous-plans répétitifs.
-
Problème corrigé dans l’application des requêtes parallèles où
GatherMerge
ne pouvait pas être appliqué. -
Problème corrigé : le coût estimé du plan appliqué était incorrect.
-
Problème corrigé dans l’application des plans approuvés où la structure contenait des tables partitionnées et des sous-plans.
SQLPostgre15 versions
Rubriques
- apg_plan_mgmt version 2.7 pour Aurora SQL Postgre 15.8, 30 septembre 2024
- apg_plan_mgmt version 2.7 pour Aurora SQL Postgre 15.7, 8 août 2024
- apg_plan_mgmt version 2.6 pour Aurora Postgre15.6 SQL
- apg_plan_mgmt version 2.6 pour Aurora Postgre15.5 SQL
- apg_plan_mgmt version 2.5 pour Aurora Postgre15.4 SQL
- apg_plan_mgmt version 2.4 pour Aurora Postgre15.3 SQL
apg_plan_mgmt version 2.7 pour Aurora SQL Postgre 15.8, 30 septembre 2024
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.7 pour Aurora Postgre SQL 15.8 sont les suivantes :
Améliorations supplémentaires
Correction d'un problème lié à l'application des plans de gestion des plans de requête contenant des agrégats de hachage.
apg_plan_mgmt version 2.7 pour Aurora SQL Postgre 15.7, 8 août 2024
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.7 pour Aurora Postgre SQL 15.7 sont les suivantes :
Nouvelles fonctionnalités
Vous n'avez plus besoin de mettre à jour le
plan_hash_version
. Après la mise à niveau du moteur de base de données, les nouvelles fonctionnalités QPM sont automatiquement activées. Vous n'avez aucune action à effectuer pour que de nouvelles fonctionnalités soient disponibles.
Améliorations supplémentaires
Correction d'un problème lié à l'application des QPM plans contenant plus de 64 tables partitionnées.
Correction d'un problème lié à l'application des QPM plans contenant l'opérateur Ajouter.
Correction d'un problème avec QPM validate_plans avec l'action update_plan_hash.
apg_plan_mgmt version 2.6 pour Aurora Postgre15.6 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.6 pour Aurora Postgre SQL 15.6 sont les suivantes :
Nouvelles fonctionnalités
QPMpeut appliquer des plans comportant des opérateurs d'agrégation.
Améliorations supplémentaires
Correction d'un problème en raison duquel la suppression d'une base de données ne supprimait pas les plans capturés associés de la mémoire partagée.
Correction d'un problème lié à l'application des plans contenant des vues.
Améliorations apportées à l'application du plan Parallel Append.
Correction d'un problème lié à la capture du plan.
-
Correction d'un problème lié à l'application des plans contenant des nœuds de collecte.
apg_plan_mgmt version 2.6 pour Aurora Postgre15.5 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.6 pour Aurora Postgre SQL 15.5 sont les suivantes :
Nouvelles fonctionnalités
Les structures de plan seront mises à jour avec la dernière version du format dans le cadre de l’action
update_plan_hash
pour la fonctionapg_plan_mgmt.validate_plans
.Prise en charge ajoutée de l’application de l’ajout parallèle dans le cadre de l’application des requêtes parallèles. Pour appliquer correctement les nœuds d’ajout parallèle, vous devez effectuer les opérations suivantes :
Définissez
apg_plan_mgmt.plan_hash_version
sur 5.Appelez
apg_plan_mgmt.validate_plans('update_plan_hash')
.
Améliorations supplémentaires
-
Amélioration des performances dans le calcul du hachage du plan.
-
Utilisation améliorée de la mémoire pour les structures de plan contenant des sous-plans répétitifs.
-
Problème corrigé dans l’application des requêtes parallèles où
GatherMerge
ne pouvait pas être appliqué. -
Problème corrigé : le coût estimé du plan appliqué était incorrect.
-
Problème corrigé dans l’application des plans approuvés où la structure contenait des tables partitionnées et des sous-plans.
apg_plan_mgmt version 2.5 pour Aurora Postgre15.4 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.5 pour Aurora Postgre SQL 15.4 sont les suivantes :
Nouvelles fonctionnalités
QPMpeut obliger les plans de requête à utiliser des opérateurs parallèles, à l'exception du nœud Parallel Append. Pour appliquer correctement les plans de requête parallèle, vous devez effectuer les opérations suivantes après la mise à niveau vers la version 15.4 ou 14.9 :
Définissez
apg_plan_mgmt.plan_hash_version
sur 4 ou plus.Appelez
apg_plan_mgmt.validate_plans('update_plan_hash')
.Capturez à nouveau les plans approuvés qui possèdent le nœud Gather dans plan_outline.
QPMpeut appliquer des plans de requêtes avec des nœuds Materialize. Pour appliquer les nœuds Materialize, vous devez effectuer les opérations suivantes après la mise à niveau vers la version 15.4 ou 14.9 :
Définissez
apg_plan_mgmt.plan_hash_version
sur 4 ou plus.Appelez
apg_plan_mgmt.validate_plans('update_plan_hash')
.
-
Pour capturer des plans de requêtes à partir de répliques, vous devez mettre à jour l'
apg_plan_mgmt
extension en appelant ALTER EXTENSION UPDATE apg_plan_mgmt. -
Vous devez spécifier
apg_plan_mgmt.plan_capture_threshold
afin de ne pas autoriser la capture QPM de plans de requête.
Améliorations supplémentaires
Amélioration des performances lors des
plan_hash
calculs.
apg_plan_mgmt version 2.4 pour Aurora Postgre15.3 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.4 pour Aurora Postgre SQL 15.3 sont les suivantes :
Nouvelles fonctionnalités
-
Introduction d'un nouveau fichier GUC auto_explain.hashes. Lorsque ce paramètre est défini sur true (par défaut : false), sql_hash et plan_hash sont affichés à la fin du résultat de l'explication automatique.
-
Présentation d'un nouveau fichier GUC apg_plan_mgmt.explain_hashes. Lorsqu'il est défini sur true (par défaut : false), le EXPLAIN résultat affiche sql_hash et plan_hash même sans l'option hashs true.
-
Présentation d'un nouveau fichier GUC apg_plan_mgmt.log_plan_enforcement_result. En fonction de sa valeur (par défaut : none), les résultats d'application du plan sont écrits dans les fichiers journaux Postgres.
-
Introduction d'une nouvelle version de calcul de hachage du plan afin de prendre en charge les tables partitionnées. Les utilisateurs doivent définir apg_plan_mgmt.plan_hash_version sur 3 et appeler apg_plan_mgmt.validate_plans('update_plan_hash') dans chaque base de données dans laquelle est installé
apg_plan_mgmt
et comportant des entrées dans la table des plans. -
QPMpeut appliquer des plans de requêtes avec des nœuds Memoize.
-
La fonction
apg_plan_mgmt.copy_outline
peut prendre en charge un nouveau 5e argument,force_update_target_plan_hash
. Si cet argument est défini sur true, le hachage du plan cible sera mis à jour même si le plan source n'est pas reproductible pour la fonction sql_hash cible.
Améliorations supplémentaires
-
Correction d'un problème lié à l'application du plan de relevés JDBC préparés.
-
Amélioration de la parité concernant queryid entre pg_stat_statements et apg_plan_mgmt.dba_plans.
-
Correction d'un problème d'application du plan lorsque les noms d'index se terminent par des chiffres.
-
La fonction apg_plan_mgmt.copy_outline copie désormais les variables d'environnement.
-
La valeur minimale de apg_plan_mgmt.plan_retention_period passe de 32 à 1.
-
La gestion des plans de requête peut désormais enregistrer des plans pour les requêtes dans les transactions en lecture seule à partir des nœuds d'écriture.
-
Correction d'un problème dans la fonction apg_plan_mgmt.evolve_plan_baselines.
-
Correction d'un problème qui pouvait entraîner une indisponibilité lorsque apg_plan_mgmt était activé.
Pour savoir comment installer, mettre à niveau et utiliser l'apg_plan_mgmt
extension, consultez la section Gestion des plans d'exécution des requêtes pour Aurora Postgre SQL dans le guide de l'utilisateur Amazon Aurora.
Postgre SQL 14 versions
Rubriques
apg_plan_mgmt version 2.7 pour Aurora SQL Postgre 14.12, 8 août 2024
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.7 pour Aurora Postgre SQL 14.12 sont les suivantes :
Nouvelles fonctionnalités
Vous n'avez plus besoin de mettre à jour le
plan_hash_version
. Après la mise à niveau du moteur de base de données, les nouvelles fonctionnalités QPM sont automatiquement activées. Vous n'avez aucune action à effectuer pour que de nouvelles fonctionnalités soient disponibles.
Améliorations supplémentaires
Correction d'un problème lié à l'application des QPM plans contenant plus de 64 tables partitionnées.
Correction d'un problème lié à l'application des QPM plans contenant l'opérateur Ajouter.
Correction d'un problème avec QPM validate_plans avec l'action update_plan_hash.
apg_plan_mgmt version 2.6 pour Aurora Postgre14.11 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.6 pour Aurora Postgre SQL 14.11 sont les suivantes :
Nouvelles fonctionnalités
QPMpeut appliquer des plans comportant des opérateurs d'agrégation.
Améliorations supplémentaires
Correction d'un problème en raison duquel la suppression d'une base de données ne supprimait pas les plans capturés associés de la mémoire partagée.
Correction d'un problème lié à l'application des plans contenant des vues.
Améliorations apportées à l'application du plan Parallel Append.
Correction d'un problème lié à la capture du plan.
-
Correction d'un problème lié à l'application des plans contenant des nœuds de collecte.
apg_plan_mgmt version 2.6 pour Aurora Postgre14.10 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.6 pour Aurora Postgre SQL 14.10 sont les suivantes :
Nouvelles fonctionnalités
Les structures de plan seront mises à jour avec la dernière version du format dans le cadre de l’action
update_plan_hash
pour la fonctionapg_plan_mgmt.validate_plans
.Prise en charge ajoutée de l’application de l’ajout parallèle dans le cadre de l’application des requêtes parallèles. Pour appliquer correctement les nœuds d’ajout parallèle, vous devez effectuer les opérations suivantes :
Définissez
apg_plan_mgmt.plan_hash_version
sur 5.Appelez
apg_plan_mgmt.validate_plans('update_plan_hash')
.
Améliorations supplémentaires
-
Amélioration des performances dans le calcul du hachage du plan.
-
Utilisation améliorée de la mémoire pour les structures de plan contenant des sous-plans répétitifs.
-
Problème corrigé dans l’application des requêtes parallèles où
GatherMerge
ne pouvait pas être appliqué. -
Problème corrigé : le coût estimé du plan appliqué était incorrect.
-
Problème corrigé dans l’application des plans approuvés où la structure contenait des tables partitionnées et des sous-plans.
apg_plan_mgmt version 2.5 pour Aurora Postgre14.9 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.5 pour Aurora Postgre SQL 14.9 sont les suivantes :
Nouvelles fonctionnalités
QPMpeut obliger les plans de requête à utiliser des opérateurs parallèles, à l'exception du nœud Parallel Append. Pour appliquer correctement les plans de requête parallèle, vous devez effectuer les opérations suivantes après la mise à niveau vers la version 15.4 ou 14.9 :
Définissez
apg_plan_mgmt.plan_hash_version
sur 4 ou plus.Appelez
apg_plan_mgmt.validate_plans('update_plan_hash')
.Capturez à nouveau les plans approuvés qui possèdent le nœud Gather dans plan_outline.
QPMpeut appliquer des plans de requêtes avec des nœuds Materialize. Pour appliquer les nœuds Materialize, vous devez effectuer les opérations suivantes après la mise à niveau vers la version 15.4 ou 14.9 :
Définissez
apg_plan_mgmt.plan_hash_version
sur 4 ou plus.Appelez
apg_plan_mgmt.validate_plans('update_plan_hash')
.
-
Pour capturer des plans de requêtes à partir de répliques, vous devez mettre à jour l'
apg_plan_mgmt
extension en appelant ALTER EXTENSION UPDATE apg_plan_mgmt. -
Vous devez spécifier
apg_plan_mgmt.plan_capture_threshold
afin de ne pas autoriser la capture QPM de plans de requête.
Améliorations supplémentaires
Amélioration des performances lors des
plan_hash
calculs.
apg_plan_mgmt version 2.4 pour Aurora Postgre14.8 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.4 pour Aurora Postgre SQL 14.8 sont les suivantes :
Nouvelles fonctionnalités
-
Introduction d'un nouveau fichier GUC auto_explain.hashes. Lorsque ce paramètre est défini sur true (par défaut : false), sql_hash et plan_hash sont affichés à la fin du résultat de l'explication automatique.
-
Présentation d'un nouveau fichier GUC apg_plan_mgmt.explain_hashes. Lorsqu'il est défini sur true (par défaut : false), le EXPLAIN résultat affiche sql_hash et plan_hash même sans l'option hashs true.
-
Présentation d'un nouveau fichier GUC apg_plan_mgmt.log_plan_enforcement_result. En fonction de sa valeur (par défaut : none), les résultats d'application du plan sont écrits dans les fichiers journaux Postgres.
-
Introduction d'une nouvelle version de calcul de hachage du plan afin de prendre en charge les tables partitionnées. Les utilisateurs doivent définir apg_plan_mgmt.plan_hash_version sur 3 et appeler apg_plan_mgmt.validate_plans('update_plan_hash') dans chaque base de données dans laquelle est installé
apg_plan_mgmt
et comportant des entrées dans la table des plans. -
QPMpeut appliquer des plans de requêtes avec des nœuds Memoize.
-
La fonction
apg_plan_mgmt.copy_outline
peut prendre en charge un nouveau 5e argument,force_update_target_plan_hash
. Si cet argument est défini sur true, le hachage du plan cible sera mis à jour même si le plan source n'est pas reproductible pour la fonction sql_hash cible.
Améliorations supplémentaires
-
Correction d'un problème lié à l'application du plan de relevés JDBC préparés.
-
Amélioration de la parité concernant queryid entre pg_stat_statements et apg_plan_mgmt.dba_plans.
-
Correction d'un problème d'application du plan lorsque les noms d'index se terminent par des chiffres.
-
La fonction apg_plan_mgmt.copy_outline copie désormais les variables d'environnement.
-
La valeur minimale de apg_plan_mgmt.plan_retention_period passe de 32 à 1.
-
La gestion des plans de requête peut désormais enregistrer des plans pour les requêtes dans les transactions en lecture seule à partir des nœuds d'écriture.
-
Correction d'un problème dans la fonction apg_plan_mgmt.evolve_plan_baselines.
-
Correction d'un problème qui pouvait entraîner une indisponibilité lorsque apg_plan_mgmt était activé.
Pour savoir comment installer, mettre à niveau et utiliser l'apg_plan_mgmt
extension, consultez la section Gestion des plans d'exécution des requêtes pour Aurora Postgre SQL dans le guide de l'utilisateur Amazon Aurora.
SQLPostgre13 versions
Rubriques
apg_plan_mgmt version 2.7 pour Aurora SQL Postgre 13.15, 8 août 2024
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.7 pour Aurora Postgre SQL 13.15 sont les suivantes :
Nouvelles fonctionnalités
Vous n'avez plus besoin de mettre à jour le
plan_hash_version
. Après la mise à niveau du moteur de base de données, les nouvelles fonctionnalités QPM sont automatiquement activées. Vous n'avez aucune action à effectuer pour que de nouvelles fonctionnalités soient disponibles.
Améliorations supplémentaires
Correction d'un problème lié à l'application des QPM plans contenant plus de 64 tables partitionnées.
Correction d'un problème lié à l'application des QPM plans contenant l'opérateur Ajouter.
Correction d'un problème avec QPM validate_plans avec l'action update_plan_hash.
apg_plan_mgmt version 2.6 pour Aurora Postgre13.14 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.6 pour Aurora Postgre SQL 13.14 sont les suivantes :
Nouvelles fonctionnalités
QPMpeut appliquer des plans comportant des opérateurs d'agrégation.
Améliorations supplémentaires
Correction d'un problème en raison duquel la suppression d'une base de données ne supprimait pas les plans capturés associés de la mémoire partagée.
Correction d'un problème lié à l'application des plans contenant des vues.
Améliorations apportées à l'application du plan Parallel Append.
Correction d'un problème lié à la capture du plan.
-
Correction d'un problème lié à l'application des plans contenant des nœuds de collecte.
apg_plan_mgmt version 2.6 pour Aurora Postgre13.13 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.6 pour Aurora Postgre SQL 13.13 sont les suivantes :
Nouvelles fonctionnalités
Les structures de plan seront mises à jour avec la dernière version du format dans le cadre de l’action
update_plan_hash
pour la fonctionapg_plan_mgmt.validate_plans
.Prise en charge ajoutée de l’application de l’ajout parallèle dans le cadre de l’application des requêtes parallèles. Pour appliquer correctement les nœuds d’ajout parallèle, vous devez effectuer les opérations suivantes :
Définissez
apg_plan_mgmt.plan_hash_version
sur 5.Appelez
apg_plan_mgmt.validate_plans('update_plan_hash')
.
Améliorations supplémentaires
-
Amélioration des performances dans le calcul du hachage du plan.
-
Utilisation améliorée de la mémoire pour les structures de plan contenant des sous-plans répétitifs.
-
Problème corrigé dans l’application des requêtes parallèles où
GatherMerge
ne pouvait pas être appliqué. -
Problème corrigé : le coût estimé du plan appliqué était incorrect.
-
Problème corrigé dans l’application des plans approuvés où la structure contenait des tables partitionnées et des sous-plans.
apg_plan_mgmt version 2.5 pour Aurora Postgre13.12 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.5 pour Aurora Postgre SQL 13.12 sont les suivantes :
Nouvelles fonctionnalités
QPMpeut obliger les plans de requête à utiliser des opérateurs parallèles, à l'exception du nœud Parallel Append. Pour appliquer correctement les plans de requête parallèle, vous devez effectuer les opérations suivantes après la mise à niveau vers la version 15.4 ou 14.9 :
Définissez
apg_plan_mgmt.plan_hash_version
sur 4 ou plus.Appelez
apg_plan_mgmt.validate_plans('update_plan_hash')
.Capturez à nouveau les plans approuvés qui possèdent le nœud Gather dans plan_outline.
-
Pour capturer des plans de requêtes à partir de répliques, vous devez mettre à jour l'
apg_plan_mgmt
extension en appelant ALTER EXTENSION UPDATE apg_plan_mgmt. -
Vous devez spécifier
apg_plan_mgmt.plan_capture_threshold
afin de ne pas autoriser la capture QPM de plans de requête.
apg_plan_mgmt version 2.4 pour Aurora Postgre13.11 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.4 pour Aurora Postgre SQL 13.11 sont les suivantes :
Nouvelles fonctionnalités
-
Introduction d'un nouveau fichier GUC auto_explain.hashes. Lorsque ce paramètre est défini sur true (par défaut : false), sql_hash et plan_hash sont affichés à la fin du résultat de l'explication automatique.
-
Présentation d'un nouveau fichier GUC apg_plan_mgmt.explain_hashes. Lorsqu'il est défini sur true (par défaut : false), le EXPLAIN résultat affiche sql_hash et plan_hash même sans l'option hashs true.
-
Présentation d'un nouveau fichier GUC apg_plan_mgmt.log_plan_enforcement_result. En fonction de sa valeur (par défaut : none), les résultats d'application du plan sont écrits dans les fichiers journaux Postgres.
-
Introduction d'une nouvelle version de calcul de hachage du plan afin de prendre en charge les tables partitionnées. Les utilisateurs doivent définir apg_plan_mgmt.plan_hash_version sur 3 et appeler apg_plan_mgmt.validate_plans('update_plan_hash') dans chaque base de données dans laquelle est installé
apg_plan_mgmt
et comportant des entrées dans la table des plans. -
La fonction
apg_plan_mgmt.copy_outline
peut prendre en charge un nouveau 5e argument,force_update_target_plan_hash
. Si cet argument est défini sur true, le hachage du plan cible sera mis à jour même si le plan source n'est pas reproductible pour la fonction sql_hash cible.
Améliorations supplémentaires
-
Correction d'un problème lié à l'application du plan de relevés JDBC préparés.
-
Correction d'un problème d'application du plan lorsque les noms d'index se terminent par des chiffres.
-
La fonction apg_plan_mgmt.copy_outline copie désormais les variables d'environnement.
-
La valeur minimale de apg_plan_mgmt.plan_retention_period passe de 32 à 1.
-
La gestion des plans de requête peut désormais enregistrer des plans pour les requêtes dans les transactions en lecture seule à partir des nœuds d'écriture.
-
Correction d'un problème dans la fonction apg_plan_mgmt.evolve_plan_baselines.
-
Correction d'un problème qui pouvait entraîner une indisponibilité lorsque apg_plan_mgmt était activé.
Pour savoir comment installer, mettre à niveau et utiliser l'apg_plan_mgmt
extension, consultez la section Gestion des plans d'exécution des requêtes pour Aurora Postgre SQL dans le guide de l'utilisateur Amazon Aurora.
SQLPostgre12 versions
Rubriques
apg_plan_mgmt version 2.7 pour Aurora SQL Postgre 12.19, 8 août 2024
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.7 pour Aurora Postgre SQL 12.19 sont les suivantes :
Nouvelles fonctionnalités
Vous n'avez plus besoin de mettre à jour le
plan_hash_version
. Après la mise à niveau du moteur de base de données, les nouvelles fonctionnalités QPM sont automatiquement activées. Vous n'avez aucune action à effectuer pour que de nouvelles fonctionnalités soient disponibles.
Améliorations supplémentaires
Correction d'un problème lié à l'application des QPM plans contenant plus de 64 tables partitionnées.
Correction d'un problème lié à l'application des QPM plans contenant l'opérateur Ajouter.
Correction d'un problème avec QPM validate_plans avec l'action update_plan_hash.
apg_plan_mgmt version 2.6 pour Aurora Postgre 12.18 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.6 pour Aurora Postgre SQL 12.18 sont les suivantes :
Améliorations supplémentaires
Correction d'un problème lié à la capture du plan.
apg_plan_mgmt version 2.6 pour Aurora Postgre 12.17 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.6 pour Aurora Postgre SQL 12.17 sont les suivantes :
Nouvelles fonctionnalités
Les structures de plan seront mises à jour avec la dernière version du format dans le cadre de l’action
update_plan_hash
pour la fonctionapg_plan_mgmt.validate_plans
.
apg_plan_mgmt version 2.5 pour Aurora Postgre 12.16 SQL
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.5 pour Aurora Postgre SQL 12.16 sont les suivantes :
Nouvelles fonctionnalités
-
Pour capturer des plans de requêtes à partir de répliques, vous devez mettre à jour l'
apg_plan_mgmt
extension en appelant ALTER EXTENSION UPDATE apg_plan_mgmt. -
Vous devez spécifier
apg_plan_mgmt.plan_capture_threshold
afin de ne pas autoriser la capture QPM de plans de requête.
Version 2.3 de l'extension Aurora Postgre SQL apg_plan_mgmt
Les améliorations apportées à l'extension apg_plan_mgmt
dans la version 2.3 sont les suivantes :
Nouvelles fonctions de l'extension
Prise en charge d'une nouvelle fonction, la fonction
apg_plan_mgmt.copy_outline
. Cette fonction vous permet de copier un hachage de plan et un schéma de plan d'un hachage et d'un SQL hachage de plan à un autre. Utilisez cette fonction lorsque vous souhaitez copier un plan qui utilise des indices menant à d'autres instructions similaires sans utiliser l'instruction d'indication intégrée à chaque occurrence. Si la mise à jour de la requête aboutit à un plan non valide, la fonction génère une erreur et annule la mise à jour. Pour plus d'informations, consultez la section Référence des fonctions pour la gestion des plans de SQL requêtes Aurora Postgre dans le guide de l'utilisateur Amazon Aurora.
Améliorations de l'extension
-
La fonctionnalité de gestion des plans de requête enregistre désormais les plans pour les requêtes qui se trouvent dans des procédures et des blocs DO. Pour les versions de
apg_plan_mgmt
antérieures à la version 2.3, cela constitue une limitation.
Pour savoir comment installer, mettre à niveau et utiliser l'apg_plan_mgmt
extension, consultez la section Gestion des plans d'exécution des requêtes pour Aurora Postgre SQL dans le guide de l'utilisateur Amazon Aurora.
Version 2.1 de l'extension Aurora Postgre SQL apg_plan_mgmt
Les améliorations apportées à l'apg_plan_mgmt
extension dans la version 2.1 pour Aurora Postgre SQL 11.20 incluent les suivantes :
Nouvelles fonctionnalités d'extension dans Aurora Postgre 11.20 SQL
-
Présentation d'un nouveau fichier GUC apg_plan_mgmt.log_plan_enforcement_result. En fonction de sa valeur (par défaut : none), les résultats d'application du plan sont écrits dans les fichiers journaux Postgres.
Améliorations apportées aux extensions dans Aurora Postgre 11.20 SQL
-
Correction d'un problème lié à l'application du plan de relevés JDBC préparés.
Pour savoir comment installer, mettre à niveau et utiliser l'apg_plan_mgmt
extension, consultez la section Gestion des plans d'exécution des requêtes pour Aurora Postgre SQL dans le guide de l'utilisateur Amazon Aurora.
Version 2.0 de l'extension Aurora Postgre SQL apg_plan_mgmt
Les modifications apportées à l'extension apg_plan_mgmt
pour la version 2.0 sont les suivantes :
Nouvelles fonctions de l'extension
-
Vous pouvez désormais gérer toutes les requêtes dans les SQL fonctions, qu'elles soient paramétrées ou non.
-
Vous pouvez désormais gérer toutes les requêtes dans les SQL fonctions PL/pG, qu'elles soient paramétrées ou non.
-
Vous pouvez désormais gérer les requêtes dans les plans génériques, qu'elles aient des paramètres ou non. Pour en savoir plus sur les plans génériques par rapport aux plans personnalisés, consultez la
PREPARE
déclaration contenue dans la SQLdocumentation Postgre. -
Vous pouvez désormais utiliser la gestion des plans de requête pour appliquer l'utilisation de types spécifiques de méthodes d'agrégation dans les plans de requête.
Améliorations de l'extension
-
Vous pouvez désormais enregistrer des plans dont la taille atteint jusqu'à 8 fois en Ko la valeur du paramètre
max_worker_processes
. Auparavant, la taille maximale d'un plan était de 8 ko. -
Correction de bogues pour les instructions préparées anonymes telles que celles provenant deJDBC.
-
Auparavant, lorsque vous essayiez de le faire
CREATE EXTENSION apg_plan_mgmt
alors qu'il n'était pas chargé dans leshared_preload_libraries
, la connexion au SQL backend Postgre était interrompue. À présent, un message d'erreur s'affiche et la connexion n'est pas abandonnée. -
La valeur par défaut de
cardinality_error
in theapg_plan_mgmt.plans table
estNULL, mais elle peut être définie sur -1 pendant laapg_plan_mgmt.evolve_plan_baselines
fonction. NULLest désormais utilisé de manière cohérente. -
Les plans sont maintenant enregistrés pour les requêtes qui font référence à des tables temporaires.
-
Le nombre maximal de plans par défaut passe de 1 000 à 10 000.
-
Les paramètres pgss suivants sont obsolètes car le mode de capture automatique des plans doit être utilisé à la place de ces paramètres.
-
apg_plan_mgmt.pgss_min_calls
-
apg_plan_mgmt.pgss_min_mean_time_ms
-
apg_plan_mgmt.pgss_min_stddev_time_ms
-
apg_plan_mgmt.pgss_min_total_time_ms
-
Version 1.0.1 de l'extension Aurora Postgre SQL apg_plan_mgmt
Les modifications apportées à l'extension apg_plan_mgmt
pour la version 1.0.1 sont les suivantes :
Nouvelles fonctions de l'extension
-
La fonction
validate_plans
a une nouvelle valeuraction
appeléeupdate_plan_hash
. Cette action met à jour l'IDplan_hash
des plans qui ne peuvent pas être reproduits exactement. Laupdate_plan_hash
valeur vous permet également de corriger un plan en réécrivant leSQL. Vous pouvez ensuite enregistrer le bon plan en tant queApproved
plan pour l'originalSQL. Voici un exemple d'utilisation de l'actionupdate_plan_hash
.UPDATE apg_plan_mgmt.plans SET plan_hash =
new _plan_hash
, plan_outline =good_plan_outline
WHERE sql_hash =bad_plan_sql_hash
AND plan_hash =bad_plan_plan_hash
; SELECT apg_plan_mgmt.validate_plans(bad_plan_sql_hash
,bad_plan_plan_hash
, 'update_plan_hash'); SELECT apg_plan_mgmt.reload(); -
Une nouvelle
get_explain_stmt
fonction est disponible qui génère le texte d'uneEXPLAIN
instruction pour l'SQLinstruction spécifiée. Elle inclut les paramètressql_hash
,plan_hash
etexplain_options
.Le paramètre
explain_options
peut être une liste d'optionsEXPLAIN
valides séparées par des virgules, comme ci-après.analyze,verbose,buffers,hashes,format json
Si le paramètre
explain_options
est NULL ou une chaîne vide, laget_explain_stmt
fonction génère uneEXPLAIN
instruction simple.Pour créer un script
EXPLAIN
pour votre charge de travail ou une partie de celle-ci, utilisez les options\a
,\t
et\o
pour rediriger la sortie vers un fichier. Par exemple, vous pouvez créer unEXPLAIN
script pour les instructions les mieux classées (Top-K) en utilisant la SQLpg_stat_statements
vue Postgre triée partotal_time
ordre.DESC
-
L'emplacement exact de l'opérateur de requête parallèle Gather est déterminé par le coût et peut changer légèrement au fil du temps. Pour empêcher ces différences de rendre invalide la totalité du plan, la gestion des plans de requête calcule désormais le même
plan_hash
, même si les opérateurs Gather se déplacent vers des endroits différents de l'arborescence des plans. -
Ajout de la prise en charge pour les instructions non paramétrées à l'intérieur des fonctions pl/pgsql.
-
La surcharge est réduite quand l'extension
apg_plan_mgmt
est installée sur plusieurs bases de données du même cluster, tandis que deux ou plusieurs bases de données sont accédées simultanément. De même, cette version a corrigé un bogue dans cette zone, lequel empêchait que les plans soient stockés en mémoire partagée.
Améliorations de l'extension
-
Améliorations de la fonction
evolve_plan_baselines
.-
La fonction
evolve_plan_baselines
calcule désormais une métriquecardinality_error
sur tous les nœuds du plan. À l'aide de cette métrique, vous pouvez identifier tout plan où l'erreur d'estimation de la cardinalité est importante et la qualité du plan plus que douteuse. Les instructions à longue exécution et valeurscardinality_error
élevées sont candidates de première priorité pour le réglage des requêtes. -
Les rapports générés par
evolve_plan_baselines
incluent désormaissql_hash
,plan_hash
, et le planstatus
. -
Vous pouvez désormais autoriser
evolve_plan_baselines
à approuver préalablement les plansRejected
. -
La signification de
speedup_factor
pourevolve_plan_baselines
est désormais toujours relative au plan de référence. Par exemple, la valeur 1.1 signifie désormais 10 % plus rapide que le plan de référence. La valeur 0.9 signifie 10 % plus lent que le plan de référence. La comparaison est établie à l'aide de la durée d'exécution seule, et non de la durée totale. -
La fonction
evolve_plan_baselines
avertit désormais le cache d'une nouvelle façon. Il le fait en exécutant le plan de référence, puis en exécutant le plan de base une fois de plus, et enfin le plan candidat une fois. Précédemment,evolve_plan_baselines
exécutait le plan candidat deux fois. Cette approche a augmenté la durée d'exécution, spécialement pour les plans candidats lents. Cependant, la double exécution du plan candidat est plus fiable quand le plan candidat utilise un index qui n'est pas utilisé dans le plan de référence.
-
-
La gestion des plans de requêtes n'enregistre plus les plans qui se rapportent aux vues ou tables système, aux tables temporaires ou aux propres tables de la gestion des plans de requêtes.
-
Les correctifs de bogues incluent la mise en cache immédiate d'un plan une fois enregistré et la correction d'un bogue qui provoquait l'arrêt du back-end.