In un nostro precedente articolo avevamo visto come realizzare una Performance Recording in Tableau Desktop per analizzare le prestazioni di una specifica cartella di lavoro. Oggi ci concentreremo su una particolare vista generata dalla Performance Recording che possiamo trovare all’interno della dashboard Performance Summary: analizzeremo il contenuto della view Query in Tableau.
In alcuni casi potremmo voler utilizzare il codice della query per lavorare con il team IT dell’organizzazione, al fine di ottimizzare le performance del workbook o del modo con cui Tableau comunica con i database che contengono i dati da visualizzare.
Nel proprio workbook di Tableau, se si dispone di un collegamento ad una fonte di dati pubblicata, il codice della query viene visualizzato in XML. Se il collegamento è invece direttamente all’origine dati, la query viene visualizzata in SQL. A volte la query viene troncata, se troppo lunga, e sarĂ necessario cercare nei file di log di Tableau per trovare il codice completo al percorso Documents > My Tableau Repository > Logs.
Â
Come generare una cartella di lavoro ottenuta dalla Performance RecordingÂ
Creiamo anzitutto una connessione al dataset Sample – Superstore presente tra le Saved Data Sources di Tableau Desktop. Partiamo da una semplice vista che mostra il valore percentuale sul totale delle vendite per Segment e Region.
Â
Â
In questo primo caso, per calcolare la percentuale abbiamo utilizzato una Quick Table Calculation “Percent of Total”; Compute Using > Table (Across). Abbiamo infine inserito un filtro sul campo Category, filtrando per Furniture e Office Supplies. La formula per la Quick Table Calculation è quindi la seguente:
Â
Â
A questo punto azioniamo il tool di Performance Recording dal Menu Help > Start Performance Recording.
Â
Spostiamoci sul nome della Data Source nel Data Pane Menu, right-click > Refresh. Questo ci permetterà di forzare l’esecuzione della query.
Â
Una volta terminata l’esecuzione della Query, andiamo sul Menu Help > Stop Performance Recording.
Â
Â
Questa operazione dovrebbe aprire in automatico il nuovo workbook “Tableau – PerformanceRecording”. Clicchiamo sulla barra “Executing Query” nello sheet “Event Sorted by Time”; nella view Query dovrebbe comparire la query SQL come di seguito:
Â
Â
A questo punto creiamo un nuovo Workbook uguale al precedente, ma questa volta calcoliamo la percentuale sul totale utilizzando una LOD expression anziché una Quick Table Calculation, così da poter vedere un codice differente da quello precedentemente generato.
Â
Â
La formula per la percentuale utilizzando la LOD expression sarĂ la seguente:
Â
Ora possiamo azionare nuovamente il tool di Performance Recording dal menu Help, fare un Refresh della Data Source dal Data Pane per eseguire la query, terminare il Performance Recording, esattamente seguendo gli stessi passaggi visti negli step sopra.
Anche in questo caso, si aprirà il nuovo Workbook “Tableau – PerformanceRecording”.
Â
Analizziamo la view Query e focalizziamoci principalmente su due aspetti:
- Come potevamo aspettarci, la query generata dalla LOD è molto più corposa e annidata rispetto alla query generata dalla Quick Table Calculation.
- Il tempo di esecuzione della query generata dalla LOD è maggiore rispetto a quello della query generata dalla Quick Table Calculation; per questo basterà visualizzare il tooltip sulla barra “Executing Query” nello sheet “Event Sorted by Time.
Â
Questo esempio, pur nella sua semplicità , rende bene l’idea di come possiamo sfruttare al meglio lo strumento Performance Recording per monitorare i tempi di esecuzione di una o più query all’interno del nostro workbook. Questo può aiutarci nello scegliere la soluzione migliore e più efficiente in termini di performance, soprattutto quando le dashboard diventano molto pesanti e di conseguenza il numero di query eseguite da Tableau aumenta notevolmente.
Per leggere altri utili suggerimenti e continuare la tua formazione Tableau, puoi seguirci sui nostri canali social Linkedin e Facebook o iscriverti alla nostra nuova community LearnToViz, per commentare questo e gli altri contenuti con gli altri membri della piattaforma!