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.
Real-time Gestion des plans SQL dans RDS pour Oracle
À partir de la base de données Oracle 26ai (26.0.0.0), Amazon RDS pour Oracle prend en charge la gestion des plans SQL en temps réel. Cette fonctionnalité empêche les régressions de performances SQL en détectant les modifications du plan d'exécution, en les évaluant par rapport aux plans précédents et en sélectionnant le plan le plus performant à partir d'une base de plan SQL, selon les besoins. Ce processus est transparent et ne nécessite aucune intervention manuelle.
Pour activer la gestion des plans SQL en temps réel sur RDS pour Oracle, vous DBMS_SPM.CONFIGURE devez activer la tâche d'évolution automatique. Vous utilisez ensuite le rdsadmin.rdsadmin_spm_util package pour configurer les paramètres de la SYS-owned tâche.
Rubriques
Présentation de
Une régression des performances SQL se produit lorsque l'optimiseur Oracle choisit un nouveau plan d'exécution moins performant qu'un plan précédent. Real-time La gestion des plans SQL automatise la détection et la prévention de ces régressions.
Lorsque la gestion des plans SQL en temps réel est activée, la base de données effectue les opérations suivantes :
-
Détecte les modifications du plan d'exécution en temps réel.
-
Évalue les performances du nouveau plan par rapport aux plans précédents.
-
Crée ou met à jour automatiquement les bases de référence du plan SQL.
-
Sélectionne le plan le plus performant pour éviter les régressions.
Exigences
Pour utiliser la gestion des plans SQL en temps réel, votre instance de base de données doit répondre aux exigences suivantes :
-
Base de données Oracle 26ai ou version ultérieure
-
Oracle Enterprise Edition
Permettre la gestion des plans SQL en temps réel
Pour activer la gestion des plans SQL en temps réel, effectuez les deux étapes suivantes.
Étape 1 : activer la tâche d'évolution automatique du SPM
Exécutez l'instruction suivante en tant qu'utilisateur principal ou en tant qu'utilisateur doté du rôle DBA :
BEGIN DBMS_SPM.CONFIGURE('AUTO_SPM_EVOLVE_TASK', 'AUTO'); END; /
Étape 2 : Configuration des paramètres de la SYS-owned tâche
La SYS_AUTO_SPM_EVOLVE_TASK tâche appartient à SYS. RDS pour Oracle fournit le rdsadmin.rdsadmin_spm_util package à cette fin.
Réglez ACCEPT_PLANS pour TRUE que la base de données accepte automatiquement les plans évolués :
EXEC rdsadmin.rdsadmin_spm_util.set_evolve_task_accept_plans('TRUE');
(Facultatif) Définissez la source de plan alternative sur AUTO :
EXEC rdsadmin.rdsadmin_spm_util.set_evolve_task_alternate_plan_source('AUTO');
Vérification de la configuration
Pour vérifier que la gestion des plans SQL en temps réel est activée, exécutez la requête suivante :
SELECT parameter_value FROM DBA_SQL_MANAGEMENT_CONFIG WHERE parameter_name = 'AUTO_SPM_EVOLVE_TASK';
La requête est renvoyéeAUTO.
Pour vérifier les paramètres de la tâche, exécutez la requête suivante :
SELECT parameter_name, parameter_value FROM DBA_ADVISOR_PARAMETERS WHERE task_name = 'SYS_AUTO_SPM_EVOLVE_TASK' AND parameter_name IN ('ACCEPT_PLANS', 'ALTERNATE_PLAN_SOURCE');
Désactivation de la gestion des plans SQL en temps réel
Pour désactiver la gestion des plans SQL en temps réel, exécutez l'instruction suivante :
BEGIN DBMS_SPM.CONFIGURE('AUTO_SPM_EVOLVE_TASK', 'OFF'); END; /
procédures rdsadmin_spm_util
Le rdsadmin.rdsadmin_spm_util package fournit les procédures suivantes.
| Procédure | Paramètre | Par défaut | Description |
|---|---|---|---|
|
|
|
|
Définit le |
|
|
|
|
Définit le |
Surveillance des bases de référence du plan SQL
Après avoir activé la gestion des plans SQL en temps réel, vous pouvez surveiller les lignes de base des plans que la base de données gère automatiquement :
SELECT SQL_HANDLE, PLAN_NAME, ENABLED, ACCEPTED, AUTOPURGE FROM DBA_SQL_PLAN_BASELINES ORDER BY LAST_MODIFIED DESC;
Considérations
Lorsque vous utilisez la gestion de plans SQL en temps réel, tenez compte des points suivants :
-
Les utilisateurs dotés du rôle DBA peuvent appeler
DBMS_SPM.CONFIGUREdirectement. Cette étape ne nécessite pas d'emballage. -
Les
rdsadmin.rdsadmin_spm_utilprocédures sont nécessaires pour configurer les paramètres de la SYS-ownedSYS_AUTO_SPM_EVOLVE_TASKtâche, car l'utilisateur principal n'a pas d'accès direct aux tâches du SYS-owned conseiller. -
Real-time La gestion des plans SQL fonctionne de manière transparente. Vous n'avez pas besoin de modifier le code de votre application.
-
Les lignes de base du plan SQL consomment de l'espace dans le tablespace SYSAUX. Surveillez l'utilisation de SYSAUX après avoir activé la fonctionnalité.
-
Les valeurs de paramètres transmises à
DBMS_SPM.CONFIGURE(telles que'AUTO'et'OFF') font la distinction entre majuscules et minuscules. Utilisez des valeurs en majuscules.
Ressources connexes
-
DBMS_SPM
dans la documentation de la base de données Oracle -
Gestion des bases de référence du plan SQL
dans la documentation de la base de données Oracle