Come progettare workbook efficienti in Tableau (parte 2)

Abbiamo già visto i principi di base sull’efficienza dei workbook in Tableau. In questa seconda parte sul tema delle performance, andremo ad analizzare uno dei temi più importanti in tutto l’ecosistema di Tableau: le connessioni ai dati e la differenza tra extract e live.

Le diverse tipologie di connessioni

Tableau fornisce l’opportunità di collegarsi a fonti di origine diverse: basate su file, relazioni, OLAP (On-Line Analytical Processing), oppure quelle basate sul web.

Per le connessioni legate ai file (come per esempio file Excel o in csv) Tableau consiglia di usare l’extract, ovvero il data engine rapido interno a Tableau stesso, in modo da rendere le query più veloci e ridurre le dimensioni del file che contiene i valori dei dati.

Sulle connessioni a dati relazionali, invece, Tableau consiglia di lavorare sull’indicizzazione del database in modo da ottenere buone prestazioni delle query, sull’integrità referenziale e il partizionamento del database.

 

Una delle caratteristiche peculiari dei database relazionali è quello di collegarsi tramite un blocco SQL personalizzato (la cosiddetta custom SQL), che viene eseguito in modo unitario e mai suddiviso. L’utilizzo della custom SQL è suggerito nuovamente in associazione all’extract dei dati, in modo che la query venga eseguita una sola volta e non ad ogni singola modifica nelle visualizzazioni.

Extract vs Live

L’extract è un’alternativa fornita da Tableau rispetto alla connessione in live, su cui le prestazioni e le funzionalità dipendono dalla piattaforma di origine. L’extract, invece, fornisce una cache permanente dei dati ed è completamente scollegato dal database durante le query. Si tratta di un’istantanea dei dati in un determinato momento che, tuttavia, è sempre aggiornabile in pochi click. Inoltre l’extract è portatile, nel senso che viene generato un file che è possibile copiare in locale e scambiarsi di persona.

 

 

Dunque, quando utilizzare l’extract e quando utilizzare la connessione in live? L’extract garantisce alcuni vantaggi specifici, tra cui il miglioramento delle prestazioni di una query particolarmente pesante. Come specifica Tableau in questo whitepaper, “il formato dati dell’estrazione è progettato per fornire risposte rapide alle query di analisi, pertanto in questo l’estrazione può essere considerata una cache per velocizzare la query”. L’extract inoltre permette di lavorare offline, perché non necessita di una connessione attiva e operante all’origine dati.

Quando invece NON bisogna usare gli extract e invece utilizzare una connessione in live? Il caso principale è quello in cui ci servono dati in tempo reale (gli extract sono un’istantanea dei dati in un determinato momento, quindi nonostante possano essere aggiornati non sono adatti a chi necessita di un flusso in costante aggiornamento), ma anche se stiamo lavorando con grandi quantità di dati che renderebbero il file troppo grande oppure se è richiesta una protezione a livello utente.

Nonostante l’extract sia un’istantanea dei dati in uno specifico momento, è comunque possibile programmare su Tableau Server l’aggiornamento pianificato dei dati, in modo tale da avere sempre l’extract aggiornato completamente oppure in maniera incrementale.

Continuate a seguirci sul blog e sui nostri canali social LinkedIn, Facebook e Twitter!