Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Real-time Gestione del piano SQL in RDS per Oracle
A partire da Oracle Database 26ai (26.0.0.0), Amazon RDS for Oracle supporta la gestione dei piani SQL in tempo reale. Questa funzionalità previene le regressioni delle prestazioni SQL rilevando le modifiche al piano di esecuzione, valutandole rispetto ai piani precedenti e selezionando il piano con le migliori prestazioni da una linea di base del piano SQL, in base alle esigenze. Questo processo è trasparente e non richiede un intervento manuale.
Per abilitare la gestione del piano SQL in tempo reale su RDS per Oracle, è DBMS_SPM.CONFIGURE necessario attivare l'attività di evoluzione automatica. Si utilizza quindi il rdsadmin.rdsadmin_spm_util pacchetto per configurare i parametri dell' SYS-owned attività.
Argomenti
Panoramica di
Una regressione delle prestazioni SQL si verifica quando l'ottimizzatore Oracle sceglie un nuovo piano di esecuzione con prestazioni peggiori rispetto a un piano precedente. Real-time La gestione del piano SQL automatizza il rilevamento e la prevenzione di queste regressioni.
Quando è abilitata la gestione del piano SQL in tempo reale, il database esegue le seguenti operazioni:
-
Rileva le modifiche al piano di esecuzione in tempo reale.
-
Valuta le prestazioni del nuovo piano rispetto ai piani precedenti.
-
Crea o aggiorna automaticamente le linee di base del piano SQL.
-
Seleziona il piano con le migliori prestazioni per prevenire le regressioni.
Requisiti
Per utilizzare la gestione del piano SQL in tempo reale, l'istanza DB deve soddisfare i seguenti requisiti:
-
Oracle Database 26ai o versioni successive
-
Oracle Enterprise Edition
Abilitazione della gestione dei piani SQL in tempo reale
Per abilitare la gestione del piano SQL in tempo reale, completa i due passaggi seguenti.
Passaggio 1: attiva l'attività Auto SPM Evolve
Esegui la seguente istruzione come utente principale o come utente con il ruolo DBA:
BEGIN DBMS_SPM.CONFIGURE('AUTO_SPM_EVOLVE_TASK', 'AUTO'); END; /
Fase 2: Configurare i parametri dell' SYS-owned attività
L'SYS_AUTO_SPM_EVOLVE_TASKattività è di proprietà di SYS. RDS for Oracle fornisce il rdsadmin.rdsadmin_spm_util pacchetto per questo scopo.
Impostato ACCEPT_PLANS in TRUE modo che il database accetti automaticamente i piani evoluti:
EXEC rdsadmin.rdsadmin_spm_util.set_evolve_task_accept_plans('TRUE');
(Facoltativo) Imposta l'origine del piano alternativo suAUTO:
EXEC rdsadmin.rdsadmin_spm_util.set_evolve_task_alternate_plan_source('AUTO');
Verifica della configurazione
Per verificare che la gestione del piano SQL in tempo reale sia abilitata, esegui la seguente query:
SELECT parameter_value FROM DBA_SQL_MANAGEMENT_CONFIG WHERE parameter_name = 'AUTO_SPM_EVOLVE_TASK';
La query restituisceAUTO.
Per verificare le impostazioni dei parametri dell'attività, esegui la seguente query:
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');
Disattivazione della gestione del piano SQL in tempo reale
Per disabilitare la gestione del piano SQL in tempo reale, esegui la seguente istruzione:
BEGIN DBMS_SPM.CONFIGURE('AUTO_SPM_EVOLVE_TASK', 'OFF'); END; /
procedure rdsadmin_spm_util
Il pacchetto fornisce le seguenti procedurerdsadmin.rdsadmin_spm_util.
| Procedura | Parametro | Predefinita | Description |
|---|---|---|---|
|
|
|
|
Imposta il parametro per. |
|
|
|
|
Imposta il |
Monitoraggio delle linee di base del piano SQL
Dopo aver abilitato la gestione del piano SQL in tempo reale, è possibile monitorare le linee di base del piano gestite automaticamente dal database:
SELECT SQL_HANDLE, PLAN_NAME, ENABLED, ACCEPTED, AUTOPURGE FROM DBA_SQL_PLAN_BASELINES ORDER BY LAST_MODIFIED DESC;
Considerazioni
Quando utilizzi la gestione del piano SQL in tempo reale, considera quanto segue:
-
Gli utenti con il ruolo DBA possono chiamare
DBMS_SPM.CONFIGUREdirettamente. Questo passaggio non richiede un wrapper. -
Le
rdsadmin.rdsadmin_spm_utilprocedure sono necessarie per configurare i parametri dell' SYS-ownedSYS_AUTO_SPM_EVOLVE_TASKattività, poiché l'utente principale non ha accesso diretto alle attività dell' SYS-ownedadvisor. -
Real-time La gestione del piano SQL funziona in modo trasparente. Non è necessario modificare il codice dell'applicazione.
-
Le linee di base del piano SQL occupano spazio nella tablespace SYSAUX. Monitora l'utilizzo di SYSAUX dopo aver abilitato la funzionalità.
-
I valori dei parametri passati a
DBMS_SPM.CONFIGURE(come'AUTO'e'OFF') fanno distinzione tra maiuscole e minuscole. Usa valori in maiuscolo.
Risorse correlate
-
DBMS_SPM
nella documentazione di Oracle Database -
Gestione delle linee di base del piano SQL nella documentazione di Oracle Database