Creazione di un task di SQL Performance Analyzer

È possibile creare un task di SQL Performance Analyzer in Database Management SQL Performance Watch per eseguire SQL Performance Analyzer.

Tale analisi comprende almeno due prove SQL e un confronto. Le prove SQL acquisiscono le prestazioni di esecuzione di un SQL Tuning Set in condizioni ambientali specifiche, ad esempio un aggiornamento del database, e l'analisi fornisce un confronto basato sull'impatto delle differenze ambientali tra le due prove.

Prima di creare un task di SQL Performance Analyzer, è necessario:

  • Assicurarsi di aver creato i database link se si stabilisce una connessione a un database remoto. Per informazioni su come creare un database link, vedere Crea database link in Oracle Database SQL Language Reference.
  • Eseguire i passi riportati di seguito se si prevede di utilizzare un sistema di test separato dal sistema di produzione.
    1. Impostare il sistema di test in modo che corrisponda il più possibile al sistema di produzione.
    2. Trasportare l'SQL Tuning Set nel sistema di test.

Per creare un task di SQL Performance Analyzer:

  1. Andare alla home page di SQL Performance Watch per il database.
  2. Nella sezione Task fare clic su Crea.
  3. Nel pannello Crea task di SQL Performance Analyzer:
    1. Specificare le seguenti opzioni generali:
      1. Nome: immettere un nome per il task.
      2. SQL Tuning Set: fare clic sull'icona Cerca (Cerca) per selezionare un SQL Tuning Set. Se un SQL Tuning Set non è disponibile, fare clic su Crea per andare alla sezione SQL Tuning Set in Diagnostica e gestione della gestione del database e creare un SQL Tuning Set. Si noti che è possibile impostare la credenziale preferenziale anche se non è stata abilitata la diagnostica e la gestione per il database.

        SQL Tuning Set è l'origine di input per un task di SQL Performance Analyzer. Il set di istruzioni SQL nel sistema di produzione che rappresenta il carico di lavoro SQL che si intende analizzare deve essere acquisito e memorizzato in un SQL Tuning Set. Per informazioni, vedere Capturing the SQL Workload in Oracle Database Testing Guide.

        È possibile creare SQL Tuning Set in Diagnostica e gestione o in Oracle Enterprise Manager prima di creare il task di SQL Performance Analyzer o in Diagnostica e gestione, durante la creazione del task di SQL Performance Analyzer. Per informazioni su come creare un SQL Tuning Set, effettuare le operazioni riportate di seguito.

        Nota

        È necessario assicurarsi che l'utente del database utilizzato per creare SQL Tuning Set venga utilizzato per creare il task di SQL Performance Analyzer.
      3. Descrizione: è possibile immettere una descrizione per il task.
      4. Tipo di modifica: selezionare una delle opzioni di tipo di modifica riportate di seguito per determinarne l'impatto sulle prestazioni SQL.
        • Modifica di parametro: consente di eseguire il test dell'effetto sulle prestazioni di un carico di lavoro SQL quando si modifica il valore dei parametri di inizializzazione. Se si seleziona questa opzione, fare clic su Aggiungi parametro per aggiungere i parametri di inizializzazione di cui si desidera modificare i valori.
        • Statistiche dell'ottimizzatore: consente di analizzare l'impatto delle modifiche alle statistiche dell'ottimizzatore sulle prestazioni di un carico di lavoro SQL. Questa opzione stabilisce che:
          • La prova SQL pre-modifica utilizza le statistiche correnti
          • La prova SQL successiva alla modifica utilizza statistiche in sospeso
            Nota

            Se si seleziona l'opzione Statistiche ottimizzatore, è necessario assicurarsi che le statistiche dell'optimizer di prova successive alla modifica siano state raccolte e salvate come in sospeso.
        • Ignora suggerimenti dell'optimizer: consente di analizzare l'impatto dei suggerimenti dell'optimizer sulle prestazioni di un carico di lavoro SQL. Questa opzione stabilisce che:
          • La prova SQL di pre-modifica utilizza i suggerimenti dell'ottimizzatore
          • La prova SQL successiva alla modifica ignora i suggerimenti dell'ottimizzatore
        • Aggiornamento: consente di analizzare l'impatto dell'aggiornamento di un database da una versione all'altra.
        • Migrazione: consente di analizzare l'impatto della migrazione dei dati dai database di origine ai database di destinazione.
        • Personalizzato: consente di personalizzare il task in base alle proprie preferenze.
    2. Selezionare uno dei seguenti metodi di creazione dei task di SQL Performance Analyzer:
      • Base: consente di creare rapidamente un task di SQL Performance Analyzer e le versioni di prova SQL precedenti alla modifica e successive alla modifica condividono la stessa configurazione. Se si seleziona l'opzione Base, è necessario specificare quanto segue:
        1. Esecuzioni di prova: specificare il metodo di esecuzione e il limite di tempo:
          1. Metodo di esecuzione: selezionare una delle seguenti opzioni per determinare la modalità di creazione delle prove SQL e il contenuto generato.
            • Esegui SQL: genera sia i piani di esecuzione che le statistiche per ogni istruzione SQL dell'SQL Tuning Set mediante l'esecuzione effettiva delle istruzioni SQL.
            • Genera piani: richiama l'ottimizzazione per creare solo i piani di esecuzione, senza eseguire effettivamente le istruzioni SQL.
            • Ibrido: trova le istruzioni SQL con modifiche del piano, quindi esegue il test delle istruzioni SQL con modifiche del piano. Questa è l'opzione predefinita.
          2. Per limite di tempo SQL: selezionare una delle seguenti opzioni per specificare il limite di tempo per l'esecuzione SQL durante la prova.
            • 5 minuti: esegue ogni istruzione SQL in SQL Tuning Set per un massimo di 5 minuti e raccoglie i dati delle prestazioni.
            • Illimitato: esegue tutte le istruzioni SQL dell'SQL Tuning Set fino al completamento e raccoglie i dati delle prestazioni. La raccolta delle statistiche di esecuzione garantisce maggiore accuratezza nell'analisi delle prestazioni ma richiede più tempo. L'uso di questa impostazione è sconsigliato in quanto il task potrebbe essere bloccato a lungo da un'istruzione SQL.
            • Personalizzato: consente di specificare il numero di secondi, minuti o ore.
        2. Confronto: specificare i dettagli per l'analisi di confronto.
          1. Metrica di confronto: selezionare le metriche che si desidera utilizzare per l'analisi di confronto.
          2. Convalida set di risultati SQL: selezionare questa opzione per indirizzare SQL Performance Analyzer in modo da rilevare se i set di risultati tra le due prove da confrontare sono diversi. Se vengono visualizzate differenze nei set di risultati di qualsiasi istruzione SQL nelle due prove confrontate, il report di confronto di SQL Performance Analyzer lo indicherà per ogni istruzione SQL di questo tipo. Per impostazione predefinita, questa opzione è Attivo.
        3. Pianifica: selezionare Subito per avviare il task subito oppure In seguito per pianificare il task in un secondo momento.
      • Avanzate: consente di personalizzare le versioni di prova SQL precedenti alla modifica e successive alla modifica e la configurazione di confronto. Se si seleziona l'opzione Avanzate, è necessario specificare quanto segue:
        1. Prova precedente alla modifica: specificare i dettagli per raccogliere i dati delle prestazioni SQL precedenti alla modifica:
          1. Nome di prova: immettere un nome per la prova SQL precedente alla modifica.
          2. Descrizione: immettere una descrizione per la prova SQL precedente alla modifica.
          3. Metodo di esecuzione: selezionare una delle seguenti opzioni per determinare la modalità di creazione delle prove SQL e il contenuto generato.
            • Esegui SQL: genera sia i piani di esecuzione che le statistiche per ogni istruzione SQL dell'SQL Tuning Set mediante l'esecuzione effettiva delle istruzioni SQL.
            • Genera piani: richiama l'optimizer per creare solo i piani di esecuzione senza eseguire effettivamente le istruzioni SQL.
            • Ibrido: trova le istruzioni SQL con modifiche del piano, quindi esegue il test delle istruzioni SQL con modifiche del piano. Questa è l'opzione predefinita.
          4. Opzioni di esecuzione: rivedere e apportare modifiche alle opzioni di esecuzione, se necessario:
            1. Per limite di tempo SQL: selezionare una delle seguenti opzioni per specificare il limite di tempo per l'esecuzione SQL durante la prova.
              • 5 minuti: esegue ogni istruzione SQL in SQL Tuning Set per un massimo di 5 minuti e raccoglie i dati delle prestazioni.
              • Illimitato: esegue tutte le istruzioni SQL dell'SQL Tuning Set fino al completamento e raccoglie i dati delle prestazioni. La raccolta delle statistiche di esecuzione garantisce maggiore accuratezza nell'analisi delle prestazioni ma richiede più tempo. L'uso di questa impostazione è sconsigliato in quanto il task potrebbe essere bloccato a lungo da un'istruzione SQL.
              • Personalizzato: consente di specificare il numero di secondi, minuti o ore.
            2. Usa ambiente di compilazione acquisizione SQL: selezionare questa opzione per indicare che l'ambiente di compilazione deve essere acquisito con le istruzioni SQL. L'impostazione predefinita è Non attivo.
            3. Numero massimo di righe da recuperare: selezionare una delle seguenti opzioni per specificare il numero di righe da recuperare:
              • Tutte le righe: recupera tutte le righe per l'istruzione SQL.
              • Media: calcola il numero di righe dei risultati come rapporto tra le righe totali elaborate e le esecuzioni totali per ogni istruzione SQL in SQL Tuning Set.
              • Automatico: determina il numero di righe dei risultati utilizzando il valore del parametro optimizer_mode dell'ambiente dell'optimizer acquisito in SQL Tuning Set. Se il valore di optimizer_mode è ALL_ROWS, verranno recuperate tutte le righe dei risultati. Se il valore è FIRST_ROWS_n, verranno recuperate le righe dei risultati n.
            4. Disabilita più esecuzioni di SQL: selezionare questa opzione per eseguire ogni istruzione SQL nell'SQL Tuning Set una sola volta. Per impostazione predefinita, questa opzione è Attivo.
            5. Esegui DML completo: selezionare questa opzione per eseguire completamente l'istruzione DML, inclusa l'acquisizione di blocchi di righe e la modifica di righe. Per impostazione predefinita, questa opzione è Attivo.
            6. + Aggiungi opzione personalizzata: fare clic per aggiungere un'opzione di esecuzione personalizzata.
        2. Prova successiva alla modifica: specificare i dettagli per raccogliere i dati delle prestazioni SQL successivi alla modifica:
          1. Nome di prova: immettere un nome per la prova SQL successiva alla modifica.
          2. Descrizione: è possibile immettere una descrizione per la prova SQL successiva alla modifica.
          3. Metodo di esecuzione: selezionare una delle seguenti opzioni per determinare la modalità di creazione delle prove SQL e il contenuto generato.
            • Esegui SQL: genera sia i piani di esecuzione che le statistiche per ogni istruzione SQL dell'SQL Tuning Set mediante l'esecuzione effettiva delle istruzioni SQL.
            • Genera piani: richiama l'optimizer per creare solo i piani di esecuzione senza eseguire effettivamente le istruzioni SQL.
            • Ibrido: trova le istruzioni SQL con modifiche del piano, quindi esegue il test delle istruzioni SQL con modifiche del piano. Questa è l'opzione predefinita.
          4. Utilizzare le stesse opzioni della prova precedente alla modifica: selezionare questa opzione per utilizzare le stesse opzioni specificate per la prova SQL precedente alla modifica. Questa è l'opzione predefinita.
          5. Utilizza opzioni specifiche di prova: selezionare questa opzione per specificare opzioni di esecuzione diverse per la prova SQL successiva alla modifica.
        3. Confronto: specificare i dettagli per l'analisi di confronto.
          1. Metrica di confronto: selezionare le metriche che si desidera utilizzare per l'analisi di confronto. Per impostazione predefinita, SQL Performance Analyzer usa come metrica di confronto il tempo trascorso. In alternativa, è possibile selezionare un'altra metrica da confrontare in questo campo.
          2. Soglia di impatto del carico di lavoro (%): immettere un valore compreso tra 0 e 100 per indicare la soglia dell'impatto della modifica di un'istruzione SQL su un carico di lavoro. Le dichiarazioni con impatto sulle modifiche del carico di lavoro al di sotto del valore assoluto di questa soglia verranno considerate invariate, ovvero le prestazioni di tali istruzioni non verranno considerate né migliorate né peggiorate.
          3. Soglia di impatto SQL (%): immettere un valore compreso tra 0 e 100 per indicare la soglia di un impatto di modifica su un'istruzione SQL. Le istruzioni con impatto sulle modifiche SQL al di sotto del valore assoluto di questa soglia verranno considerate invariate, ovvero le prestazioni di tali istruzioni non verranno considerate né migliorate né peggiorate.
          4. Confronta linee piano: selezionare una delle seguenti opzioni di confronto delle linee piano:
            • Sempre: esegue un confronto linea per linea dei piani in tutti gli scenari.
            • Automatico: esegue un confronto riga per riga dei piani di esecuzione solo se il calcolo del valore hash del piano per la prima prova SQL è stato modificato o la seconda prova SQL non è disponibile.
            • Nessuno: esegue un confronto riga per riga dei piani di esecuzione solo se il valore hash del piano è sconosciuto. Si tratta del valore predefinito.
          5. Soglia delta della metrica (%): immettere un valore compreso tra 0 e 100 per indicare la soglia della differenza tra la metrica delle prestazioni SQL prima e dopo la modifica.
          6. Convalida set di risultati SQL: selezionare questa opzione per indirizzare SQL Performance Analyzer per rilevare se i set di risultati tra le due prove confrontate sono diversi. Se vengono rilevate differenze nei risultati di qualsiasi istruzione SQL tra i due test confrontati, il report di confronto SQL Performance Analyzer lo indicherà per ogni istruzione SQL di questo tipo. Per impostazione predefinita, è Attivo.
          7. + Aggiungi opzione personalizzata: fare clic per aggiungere un'opzione di esecuzione personalizzata.
        4. Pianifica: selezionare Subito per avviare il task subito oppure In seguito per pianificare il task in un secondo momento.
    3. Fare clic su Invia.
Dopo aver creato uno o più task di SQL Performance Analyzer nella home page di SQL Performance Watch per il database, è possibile monitorare le informazioni relative ai task nelle caselle seguenti per il periodo di tempo selezionato nell'elenco a discesa Visualizza dati.
  • Report di confronto più recente: visualizza lo stato del task e il confronto più recente per un tipo di modifica tra le prove SQL precedenti alla modifica e successive alla modifica specificate nel task. È possibile fare clic sul collegamento del report di confronto (percentuale di modifica) per visualizzare il report di confronto. Per informazioni sul report di confronto, vedere Visualizza report di confronto di SQL Performance Analyzer.
  • Task per stato: visualizza i task di SQL Performance Analyzer suddivisi per stato in un grafico a ciambella. Fare clic sul collegamento Tutti i task per reimpostare i dati visualizzati nel grafico.
  • Task per tipo di modifica: visualizza i task di SQL Performance Analyzer suddivisi per tipo di modifica in un grafico a barre orizzontale. Fare clic sul collegamento Tutti i task per reimpostare i dati visualizzati nel grafico.

I task di SQL Performance Analyzer sono elencati nella sezione Task della home page di SQL Performance Watch per il database. Se si dispone di numerosi task, è possibile utilizzare gli elenchi a discesa Modifica tipo e Stato oppure il campo Cerca per task o descrizione per filtrare i task. Per visualizzare informazioni aggiuntive, ad esempio la descrizione del task, selezionare un'opzione nell'elenco a discesa Colonne.

Nella sezione Task è possibile:

  • Fare clic sul nome del task per visualizzare i dettagli, le esecuzioni e il confronto dei task di SQL Performance Analyzer ed eseguire task quali la creazione di prove e confronti. Per informazioni, vedere Monitorare un task di SQL Performance Analyzer.
  • Fare clic sull'icona Azioni (Azioni) per il task ed eseguire i task riportati di seguito.
    • Visualizza: fare clic per visualizzare i dettagli del task di SQL Performance Analyzer.
    • Mostra report più recente: fare clic per visualizzare il report di confronto più recente generato per il task.
    • Elimina: fare clic per eliminare il task.
    • Completo: fare clic per completare la creazione di un task di SQL Performance Analyzer. La creazione di determinati task di SQL Performance Analyzer richiede due job dbms_scheduler poiché è necessario eseguire passi manuali. Una volta completato il primo job, il task viene contrassegnato e dopo aver eseguito i passi manuali richiesti, fare clic su Completa per attivare l'esecuzione del secondo job e completare il task.