Strumenti per la raccolta e l'analisi di informazioni explain

Il server di database Db2® il server di database dispone di una funzione di spiegazione completa che fornisce informazioni dettagliate sul piano di accesso scelto dall'ottimizzatore per un'istruzione SQL o XQuery.

Le tabelle che memorizzano i dati explain sono accessibili su tutte le piattaforme supportate e contengono informazioni per le istruzioni SQL e XQuery statiche e dinamiche. Sono disponibili diversi strumenti per fornire la flessibilità necessaria per acquisire, visualizzare e analizzare le informazioni explain.

Le informazioni dettagliate sul programma di ottimizzazione delle query che consentono l'analisi approfondita di un piano di accesso vengono memorizzate in tabelle explain separate dal piano di accesso effettivo. Utilizzare uno o più dei seguenti metodi per ottenere informazioni dalle tabelle explain:
  • Utilizzare lo strumento db2exfmt per visualizzare le informazioni explain nell'output formattato.
  • Scrivere le proprie query rispetto alle tabelle explain. La scrittura delle proprie query consente una facile manipolazione dell'output, confronti tra query differenti o confronti tra esecuzioni della stessa query nel tempo.
  • Utilizzare la procedura memorizzata EXPLAIN_FORMAT per formattare i dati explain e memorizzarli in una colonna della tabella EXPLAIN_STATEMENT.

Utilizzare lo strumento db2expln per visualizzare le informazioni sul piano di accesso disponibili per uno o più package di istruzioni SQL o XQuery statiche. Questo programma di utilità mostra l'implementazione effettiva del piano di accesso scelto; non mostra le informazioni del programma di ottimizzazione. Esaminando il piano di accesso generato, lo strumento db2expln fornisce una panoramica verbale relativamente compatta delle operazioni che si verificheranno al runtime.

Gli strumenti explain della riga comandi sono disponibili nella directory secondaria misc della directory sqllib .

La seguente tabella riepiloga i diversi strumenti disponibili con la funzione explain Db2 . Utilizzare questa tabella per selezionare lo strumento più adatto all'ambiente e alle esigenze.
Tabella 1. Strumenti di Explain Facility
Caratteristiche desiderate Tabelle explain db2expln db2exfmt procedura EXPLAIN_FORMAT
Output testo  
Quick and dirty analisi SQL e XQuery statiche    
Supporto SQL statico e XQuery
Supporto SQL dinamico e XQuery
Supporto applicazione CLI  
Disponibile per i richiedenti applicazione DRDA    
Informazioni dettagliate sull'ottimizzatore  
Adatto per l'analisi di più istruzioni
Le informazioni sono accessibili dall'interno di una applicazione    

Oltre a questi strumenti, è possibile utilizzare IBM Data Studio La versione 3.1 o successiva consente di generare un diagramma del piano di accesso corrente per le istruzioni SQL o XPATH. Per ulteriori dettagli, vedi Diagnostica dei piani di accesso con Visual Explain.

Visualizzazione delle statistiche di catalogo in vigore al momento dell'explain

La funzione explain acquisisce le statistiche in vigore quando un'istruzione viene spiegata. Queste statistiche potrebbero essere diverse da quelle memorizzate nel catalogo di sistema, soprattutto se è abilitata la raccolta delle statistiche in tempo reale. Se le tabelle explain sono popolate, ma non è stata creata un'istantanea explain, solo alcune statistiche vengono registrate nella tabella EXPLAIN_OBJECT.

Per acquisire tutte le statistiche di catalogo rilevanti per l'istruzione di cui si sta eseguendo l'explain, creare un'istantanea explain nello stesso momento in cui si stanno popolando le tabelle explain, quindi utilizzare SYSPROC.EXPLAIN_FORMAT_STATS per formattare le statistiche del catalogo nell'istantanea.

Se lo strumento db2exfmt viene utilizzato per formattare le informazioni explain ed è stata raccolta un'istantanea explain, lo strumento utilizza automaticamente SYSPROC.EXPLAIN_FORMAT_STATS per visualizzare le statistiche del catalogo.