Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Dopo aver registrato la diagnostica che si vuole usare, il passaggio successivo consiste nel comprendere cosa dicono.
È utile avere una buona conoscenza del significato di ogni colonna nello schema di diagnostica delle query. Questa esercitazione non tratta tali informazioni. Per una descrizione completa, consulta Diagnostica delle query.
In generale, quando si compilano visualizzazioni, usare la tabella dettagliata completa. Indipendentemente dal numero di righe che contiene, probabilmente si sta guardando una sorta di rappresentazione di come si somma il tempo impiegato nelle diverse risorse oppure di quale query nativa è stata emessa.
Come accennato nell'articolo sulla registrazione della diagnostica, questo esempio funziona con le tracce OData e SQL per la tabella Customers di Northwind. In particolare, l'attenzione è rivolta a una richiesta comune dei clienti e a uno dei set di tracce più facili da interpretare: aggiornamento completo del modello di dati.
Creare le visualizzazioni
Quando si esaminano le tracce, è possibile valutarle in molti modi. Questo articolo descrive due visualizzazioni. La prima visualizzazione mostra i dettagli di cui si è a cuore e l'altro mostra i contributi temporali di vari fattori. Per la prima visualizzazione, usare una tabella. È possibile selezionare tutti i campi desiderati, ma per un'analisi di alto livello semplice, usare i campi seguenti:
- Id
- Ora di inizio
- Quesito
- Step
- Query dell'origine dati
- Durata esclusiva (%)
- Conteggio righe
- Categoria
- È una query utente
- Percorso
Per la seconda visualizzazione, utilizza un grafico a colonne in pila. Nel parametro Axis usare ID o Step. Se stai considerando Refresh, poiché non ha nulla a che fare con i passaggi nell'Editor stesso, probabilmente ti basta considerare Id. Per il parametro Legend, imposta Category o Operation (a seconda della granularità desiderata). Per il parametro Value, impostare Durata esclusiva e assicurarsi che non sia impostato su %, in modo da ottenere il valore di durata grezzo. Infine, per il parametro Tooltip, impostare l'Ora di inizio più anticipata.
Dopo aver creato la visualizzazione, assicurarsi di ordinare per Ora di inizio più precoce in ordine crescente, in modo da poter vedere l'ordine in cui si verificano gli eventi.
Anche se le esigenze esatte potrebbero differire, questa combinazione di grafici è un buon punto di partenza per esaminare numerosi file di diagnostica e per molti scopi.
Interpretare le visualizzazioni
Come accennato in precedenza, la diagnostica delle query consente di rispondere a molte domande. Le due domande più comuni sono come viene impiegato il tempo e quale query viene inviata alla fonte.
Comprendere il modo in cui viene impiegato il tempo è semplice ed è simile per la maggior parte dei connettori. Tuttavia, come accennato altrove, vengono visualizzate funzionalità drasticamente diverse a seconda del connettore. Ad esempio, molti connettori basati su ODBC non forniscono un record accurato della query che Power Query invia al driver ODBC.
Per vedere come viene impiegato il tempo, esaminare le visualizzazioni create in precedenza.
Poiché i valori temporali delle query di esempio usate qui sono così piccoli, se si vuole lavorare con il modo in cui Power BI riporta il tempo, è preferibile convertire la colonna Durata esclusiva in secondi nell'Editor di Power Query. Dopo aver eseguito questa conversione, è possibile esaminare il grafico e ottenere un'idea chiara del punto in cui viene impiegato il tempo.
Per i risultati OData, l'immagine seguente mostra che la maggior parte del tempo viene impiegato per recuperare i dati dall'origine. Se si seleziona l'elemento Origine dati nella legenda, vengono visualizzate tutte le diverse operazioni correlate all'invio di una query all'origine dati.
Se si eseguono tutte le stesse operazioni e si creano visualizzazioni simili, ma si usano le tracce SQL anziché quelle ODATA, è possibile vedere come vengono confrontate le due origini dati.
Se si seleziona la tabella dell'origine dati, ad esempio con la diagnostica ODATA, si noterà che la prima valutazione (2.3 in questa immagine) invia query sui metadati e la seconda valutazione recupera i dati di cui si è interessati. In questo esempio vengono recuperate piccole quantità di dati, quindi il recupero dei dati richiede una piccola quantità di tempo (inferiore a un decimo di secondo per l'intera valutazione, con meno di un ventesimo di secondo per il recupero dei dati stesso), ma tale velocità non è vera in tutti i casi.
Come in precedenza, selezionare la categoria Origine dati nella legenda per visualizzare le query generate.
Approfondire i dati
Esaminare i percorsi
Quando si esaminano questi dati, è possibile notare che il tempo impiegato sembra insolito. Ad esempio, nella query OData, potresti notare che è presente una query dell'origine dati con il valore seguente:
Request:
https://services.odata.org/V4/Northwind/Northwind.svc/Customers?$filter=ContactTitle%20eq%20%27Sales%20Representative%27&$select=CustomerID%2CCountry HTTP/1.1
Content-Type: application/json;odata.metadata=minimal;q=1.0,application/json;odata=minimalmetadata;q=0.9,application/atomsvc+xml;q=0.8,application/atom+xml;q=0.8,application/xml;q=0.7,text/plain;q=0.7
<Content placeholder>
Response:
Content-Type: application/json;odata.metadata=minimal;q=1.0,application/json;odata=minimalmetadata;q=0.9,application/atomsvc+xml;q=0.8,application/atom+xml;q=0.8,application/xml;q=0.7,text/plain;q=0.7
Content-Length: 435
<Content placeholder>
Questa query dell'origine dati è associata a un'operazione che rappresenta solo, ad esempio, l'1% della durata esclusiva. Nel frattempo, c'è uno simile:
Request:
GET https://services.odata.org/V4/Northwind/Northwind.svc/Customers?$filter=ContactTitle eq 'Sales Representative'&$select=CustomerID%2CCountry HTTP/1.1
Response:
https://services.odata.org/V4/Northwind/Northwind.svc/Customers?$filter=ContactTitle eq 'Sales Representative'&$select=CustomerID%2CCountry
HTTP/1.1 200 OK
Questa query dell'origine dati è associata a un'operazione che occupa quasi il 75% della durata esclusiva. Se si attiva il Percorso, si scopre che quest'ultimo è effettivamente un figlio del primo. Ciò significa che la prima query aggiunge in pratica solo una piccola quantità di tempo di per sé, mentre il recupero effettivo dei dati viene tracciato dalla query inner.
Questi valori sono estremi, ma si trovano entro i limiti di ciò che si potrebbe vedere.