Condividi tramite


Profilo di query

È possibile usare un profilo di query per visualizzare i dettagli di un'esecuzione di query. Il profilo di query aiuta a individuare e risolvere i colli di bottiglia delle prestazioni durante l'esecuzione della query. Ad esempio:

  • È possibile visualizzare ogni operatore di query e le metriche correlate, ad esempio il tempo impiegato, il numero di righe elaborate, le righe elaborate e il consumo di memoria.
  • È possibile identificare la parte più lenta di un'esecuzione di query a colpo d'occhio e valutare l'impatto delle modifiche apportate alla query.
  • Puoi individuare e correggere errori comuni nelle istruzioni SQL, come i join esplosivi o gli scan di tabelle complete.

Requisiti

Per visualizzare un profilo di query, è necessario essere il proprietario della query oppure disporre almeno dell'autorizzazione CAN MONITOR per sql warehouse che ha eseguito la query.

Visualizzare un profilo di query

È possibile visualizzare il profilo di query dalla cronologia delle query seguendo questa procedura:

  1. Fare clic sull'icona Cronologia.Cronologia delle query nella barra laterale.

  2. Fare clic sul nome di una query. Viene visualizzato un pannello dei dettagli della query sul lato destro della schermata.

    Visualizzazione semplice riepilogo esecuzione query

    Il riepilogo della query include:

    • Stato della query: La query viene contrassegnata con lo stato corrente: Accodato, In esecuzione, Completato, Non riuscito o Annullato.
    • Dettagli utente e calcolo: Per questa esecuzione della query, consultare il nome utente, il tipo di calcolo e i dettagli sul tempo di esecuzione.
    • ID: Si tratta dell'identificatore univoco universale (UUID) associato all'esecuzione della query specificata.
    • Istruzione query: Questa sezione include l'istruzione query completa. Se la query è troppo lunga per essere visualizzata nell'anteprima, fare clic su ... più righe per visualizzare il testo completo.
    • Metriche di query: Le metriche più diffuse per l'analisi delle query vengono visualizzate sotto il testo della query. Le icone del filtro visualizzate con alcune metriche indicano la percentuale di dati eliminati durante l'analisi.
    • Visualizza profilo della query: Un'anteprima del grafico aciclico diretto (DAG) del profilo della query è illustrata in questo riepilogo. Ciò può essere utile per stimare rapidamente la complessità delle query e il flusso di esecuzione. Fare clic su Visualizza profilo di query per aprire il DAG dettagliato.
    • Visualizza gli operatori più lunghi per questa query: Clicca su questo pulsante per aprire il pannello Operatori principali. Questo pannello mostra gli operatori con la più lunga esecuzione nella query.
    • Durata in tempo reale della query: Il tempo totale trascorso tra l'inizio della pianificazione e la fine dell'esecuzione della query viene fornito come sintesi. Un dettaglio dettagliato della pianificazione, dell'ottimizzazione delle query e dell'eliminazione dei file e del tempo di esecuzione viene visualizzato sotto il riepilogo.
    • Origine query: Fare clic sul nome dell'oggetto elencato per passare all'origine della query.
    • Tempo di attività aggregato: Visualizzare il tempo combinato impiegato per eseguire la query in tutti i core di tutti i nodi. Può essere significativamente più lunga della durata reale se più attività vengono eseguite in parallelo. Può essere più breve della durata del tempo in tempo reale se le attività hanno aspettato i nodi disponibili.
    • Input/output (I/O): Visualizzare i dettagli sui dati letti e scritti durante l'esecuzione della query.
  3. Fare clic su Vedere profilo delle query. Viene aperto un pannello Dettagli sul lato destro dello schermo.

    Consulta i dettagli del profilo.

    Nota

    Se viene visualizzato il profilo di query non è disponibile, significa che non c'è alcun profilo disponibile per questa query. Un profilo di query non è disponibile per le query eseguite dalla cache delle query. Per aggirare la cache delle query, apportare una modifica semplice alla query, ad esempio modificando o rimuovendo .LIMIT

Visualizzare i dettagli del profilo di interrogazione

Il profilo di query dettagliato include metriche di riepilogo sul lato sinistro del pannello e una rappresentazione grafica degli operatori a destra.

Esplorare le metriche delle query

Il lato sinistro del profilo di query presenta le schede seguenti:

  1. Icona Dettagli : apre il pannello Dettagli che mostra le metriche di riepilogo delle query.

  2. Icona operatori principali Operatori principali: apre il pannello Operatori principali che mostra gli operatori più costosi usati nella tua query. Ciò può essere utile per identificare le opportunità di ottimizzazione.

  3. Icona testo query Testo della query: apre il pannello Testo della query che mostra il testo completo della query.

Nota

Alcune operazioni non photon vengono eseguite come gruppo e condividono metriche comuni. In questo caso, tutte le operazioni hanno lo stesso valore dell'operatore padre per una determinata metrica.

Esplorare il DAG

La metà destra del profilo di query mostra il grafico aciclico diretto (DAG) della query. La visualizzazione grafica mostra le metriche, ad esempio Tempo impiegato, Picco della memoria e Righe. Fare clic su ogni metrica per modificare la metrica di report visualizzata.

È possibile interagire con il DAG nei modi seguenti:

  • Usare la barra di ricerca per evidenziare operatori o colonne diversi.
  • Ingrandisci o riduci lo zoom su parti diverse del DAG.
  • Fare clic sugli operatori per visualizzare metriche e descrizioni dettagliate. Un pannello sul lato destro del grafico mostra i dettagli dell'operazione.

Per le query SQL di Databricks, è anche possibile visualizzare il profilo di query nell'interfaccia utente di Apache Spark. Fare clic sull'icona del menu Kebab. Menu kebab nella parte superiore della pagina, quindi fare clic su Apri nell'interfaccia utente di Spark.

Per impostazione predefinita, le metriche per alcune operazioni sono nascoste. È improbabile che queste operazioni siano la causa di colli di bottiglia delle prestazioni. Per visualizzare le informazioni per tutte le operazioni e per visualizzare metriche aggiuntive, fare clic sull'icona del menu Kebab nella parte superiore della pagina, quindi fare clic su Abilita modalità dettagliata.

Operazioni comuni

Le operazioni più comuni sono:

  • Scansione: i dati sono stati letti da un'origine dati e emessi come righe.
  • join: le righe di più relazioni sono state combinate (intercalate) in un unico insieme di righe.
  • Union: le righe di più relazioni che usano lo stesso schema sono state concatenate in un singolo set di righe.
  • Shuffle: i dati sono stati ridistributi o ripartizionati. Le operazioni di shuffle sono costose in termini di risorse perché spostano i dati tra executor nel cluster.
  • Hash/Ordinamento: le righe sono state raggruppate in base a una chiave e valutate usando una funzione di aggregazione, SUMad esempio , COUNTo MAX all'interno di ogni gruppo.
  • Filtro: l'input viene filtrato in base a un criterio, ad esempio in base a una WHERE clausola e viene restituito un subset di righe.

Condividere un profilo di interrogazione

Per condividere un profilo di query con un altro utente:

  1. Visualizzare la cronologia delle query.
  2. Fare clic sul nome della query.
  3. Per condividere la query, sono disponibili due opzioni:
    • Se l'altro utente dispone dell'autorizzazione CAN MANAGE per la query, è possibile condividere l'URL per il profilo di query con loro. Fare clic su Condividi. L'URL viene copiato negli appunti.
    • In caso contrario, se l'altro utente non dispone dell'autorizzazione CAN MANAGE o non è membro dell'area di lavoro, è possibile scaricare il profilo di query come oggetto JSON. Scaricare Il file JSON viene scaricato nel sistema locale.

Importare un profilo di query

Per importare il codice JSON per un profilo di query:

  1. Visualizzare la cronologia delle query.

  2. Fare clic sull'icona del menu Kebab in alto a destra e selezionare Importa profilo di query (JSON).

  3. Nel browser file selezionare il file JSON condiviso con l'utente e fare clic su Apri. Il file JSON viene caricato e viene visualizzato il profilo di query.

    Quando si importa un profilo di query, viene caricato dinamicamente nella sessione del browser e non viene mantenuto nell'area di lavoro. È necessario riimportarlo ogni volta che si vuole visualizzarlo.

  4. Per chiudere il profilo di query importato, fare clic su X nella parte superiore della pagina.

Accedere al profilo di interrogazione

È anche possibile accedere al profilo di query nelle parti seguenti dell'interfaccia utente:

  • Dall'editor SQL: durante e dopo l'esecuzione della query, un collegamento nella parte inferiore della pagina visualizza il tempo trascorso e il numero di righe restituite. Fai clic sul collegamento per aprire il pannello dei dettagli della query. Fare clic su Vedere profilo delle query.

    Aprire la cronologia delle query dall'output dell'editor

    Nota

    Se hai abilitato il nuovo editor SQL (Anteprima Pubblica), il collegamento appare allo stesso modo di come accade in un notebook.

  • Da un notebook: se il notebook è collegato a un'istanza di SQL Warehouse o a un ambiente di calcolo serverless, è possibile accedere al profilo di query usando il collegamento sotto la cella che contiene la query. Fare clic su Visualizza prestazioni per aprire la cronologia di esecuzione. Fare clic su un'istruzione per aprire il pannello dei dettagli della query.

    Apri l'output della cronologia delle query nel notebook

  • Dall'interfaccia utente di Lakeflow Declarative Pipelines: è possibile accedere alla cronologia delle query e al profilo dalla scheda Cronologia query nell'interfaccia utente della pipeline. Vedere Accedere alla cronologia delle query per le pipeline dichiarative di Lakeflow.

  • Dall'interfaccia utente dei processi: è possibile accedere ai profili di query per i processi eseguiti in SQL Warehouse e nelle risorse di calcolo serverless. Per i processi eseguiti nel calcolo serverless, vedere Visualizzare i dettagli delle query per le esecuzioni dei processi per informazioni su come visualizzare i dettagli delle query nell'interfaccia utente dei processi.

Passaggi successivi

  • Informazioni sull'accesso alle metriche di query tramite l'API della cronologia delle query
  • Altre informazioni sulla cronologia delle query