Corso
I dati sono parte integrante della vita dei Data Scientist. Dai ricavi e profitti di un’azienda, ai passeggeri in un aeroporto, tutto costituisce dati. Tutti questi dati vengono registrati e spesso archiviati in file chiamati database, e un compito essenziale di un Data Scientist è saper accedere ai dati dai database e poi analizzarli. La maggior parte degli strumenti ETL che aiutano nella fase di pulizia eseguono in realtà comandi SQL sotto il cofano. Quindi avere un po’ di conoscenza di SQL può essere una risorsa molto preziosa per un utente Tableau.
Obiettivo
Oltre ai vari vantaggi di visualizzazione che Tableau offre, ha anche straordinarie capacità di connessione pronte all’uso. Tableau può integrarsi facilmente con DBMS come SQL. Questo offre maggiori vantaggi in termini di funzionalità ed è utile per i Data Scientist abituati a lavorare con SQL. Tableau fornisce un connettore live ottimizzato per SQL Server, così possiamo creare grafici, report e dashboard lavorando direttamente sui nostri dati.
Prerequisiti
Questo articolo presuppone una certa familiarità con Tableau, le sue proprietà e come viene usato per fare analisi. Poiché l’articolo si concentrerà solo su SQL con Tableau, ti consigliamo di consultare i seguenti tutorial esistenti che sono un eccellente punto di partenza sia per Tableau che per SQL:
Data Visualization con Tableau
Tutorial SQL: come scrivere query migliori
1. Tableau
Tableau Software è un’azienda statunitense di software con sede a Seattle che realizza prodotti per la visualizzazione interattiva dei dati focalizzati sulla BI. I principali prodotti offerti da Tableau sono Tableau Desktop, Tableau Public e Tableau Online. Puoi leggere di più qui. Per questo tutorial useremo Tableau Desktop (prova di 14 giorni disponibile), poiché la versione gratuita Tableau Public non fornisce la connettività SQL.
Installazione
Scarica l’edizione Tableau Desktop dal sito ufficiale. Segui le istruzioni di installazione e, se alla pressione dell’icona di Tableau compare la schermata seguente, sei a posto.

2. Database relazionali: una rapida panoramica
Il sistema di gestione dei database (DBMS) è il software che interagisce con gli utenti finali, le applicazioni e il database stesso per acquisire e analizzare i dati. Il DBMS usato per i database relazionali è chiamato Relational Database Management System (RDBMS).
Un database relazionale consiste in una o più tabelle di informazioni. Le righe in una tabella sono dette record e le colonne sono dette campi o attributi. Un database che contiene due o più tabelle correlate si chiama database relazionale, cioè con dati interrelati. I principali RDBMS sono Oracle, MySQL, Microsoft SQL Server, PostgreSQL, Microsoft Access e SQLite.
L’idea principale di un database relazionale è suddividere i dati in temi comuni, con una tabella dedicata a descrivere i record di ciascun tema.

Fonte ## SQL SQL, o Structured Query Language, è un linguaggio progettato per gli RDBMS. È un linguaggio dichiarativo per manipolare i dati e accedere al database. SQL si usa per inserire, modificare, aggiornare e interrogare i dati nei database. SQL può essere considerato un linguaggio per database. # 3. Connessione a SQL Server Nei nostri dati su Microsoft SQL Server esiste un valore nascosto, sepolto sotto report standard e strumenti BI complessi. Tableau fornisce insight mettendo chiunque in grado di eseguire un’analisi visiva avanzata dei dati di SQL Server. Possiamo collegare Tableau a SQL Server in live per query ottimizzate e specifiche della piattaforma, oppure importare direttamente i dati nel motore analitico di Tableau per alleggerire il carico sul database. Vediamo un esempio che mostra come collegare un database SQL Server a Tableau Desktop e usarlo per creare visualizzazioni. ## Database di esempio Per la dimostrazione useremo un’istanza SQL Server pubblicamente accessibile su AWS e un database creato sulla base del dataset integrato di Tableau Superstore. Contiene informazioni su prodotti, vendite, profitti, ecc. Il nostro obiettivo, come Data Analyst, è analizzare i dati e trovare aree critiche di miglioramento in questa azienda fittizia. Questa istanza SQL Server è stata ospitata da Ken Flerlage, che scrive regolarmente blog per utenti Tableau. ## Accesso al database di esempio - Installa SQL Server Management Studio (SSMS). SSMS è un ambiente gratuito e integrato per gestire qualsiasi infrastruttura SQL. Con SSMS puoi distribuire, monitorare e aggiornare i componenti del livello dati usati dalle tue applicazioni, oltre a creare query e script. - Una volta scaricato e installato sul tuo sistema, vedrai la seguente schermata che chiede credenziali specifiche.

Inserisci le seguenti credenziali:
Server Name: ec2-52-14-205-70.us-east-2.compute.amazonaws.com
Authentication: SQL Server Authentication
Login: SQL
Password: SQL
Ora ti verrà concesso l’accesso "Read Only" al database SuperStoreUS.

Nel nostro esempio, ec2–52–14–205–70.us-east-2.compute.amazonaws.com è il nome dell’istanza, SuperstoreUS e Test sono i database e Orders, Customers ecc. sono le tabelle all’interno del database SuperstoreUS. Possono quindi esistere più istanze, e ciascuna istanza può a sua volta contenere numerosi database, che a loro volta possono avere più tabelle.

4. Importare dati SQL in Tableau
Configurare la connessione
Apri Tableau Desktop e vai alla schermata iniziale. Qui il riquadro di connessione offre molte opzioni in termini di fonti dati collegabili a Tableau. Ci collegheremo a Microsoft SQL Server.

Facendo clic sull’opzione Microsoft SQL Server, si aprirà una nuova schermata che chiederà il Server a cui vogliamo che Tableau si connetta. Inserisci i dettagli e si aprirà un’area di lavoro Tableau dall’aspetto familiare.

Ora possiamo selezionare dall’elenco dei database disponibili. Qui selezioneremo il database SuperStore US.

Ora puoi fare clic e trascinare la tabella desiderata nella vista. Trasciniamo la tabella orders per ulteriori analisi. Il riquadro di anteprima offre le opzioni Update Now, che carica manualmente l’anteprima, o Automatically Update.

Ottenere dati da più tabelle dello stesso database
È anche possibile importare dati da più di una tabella in Tableau, tramite le join. Fare una join significa combinare tabelle correlate da alcuni campi comuni. Ad esempio, è possibile unire la tabella Orders e la tabella Returns poiché hanno una colonna comune chiamata Order-ID. La join crea semplicemente una tabella virtuale aggiungendo affiancate colonne di tabelle diverse.


Se l’analisi richiede di lavorare con dati da più fonti, si parla di Data Blending. Puoi leggere di più sul blending qui.

Blend #
5. Custom SQL
Custom SQL dà agli utenti il controllo sui dati che vogliono portare in Tableau. Questa funzione non riguarda in particolare la scrittura di query SQL, ma soprattutto la definizione del dataset. Il processo per definire una nuova Custom SQL è il seguente: - Clicca sulla scheda Custom SQL sul lato sinistro dello schermo e si aprirà una finestra di dialogo. - Scrivi nella finestra la query personalizzata che vuoi eseguire - Aggiorna i risultati e otterrai solo gli ordini con quantità maggiori di 4. - Passa ora al tuo foglio di lavoro e inizia a esplorare con Tableau.

Questa era una query semplice perché i dati sono limitati. Tuttavia, puoi anche eseguire query complesse.
6. Filtri dell’origine dati
Proprio come con la Custom SQL, è anche possibile ottenere in Tableau dati specifici con i filtri dell’origine dati. Vediamo come lavorare con questi filtri.
- Trascina la scheda
Ordersnella vista. La tabella Orders contiene un campo chiamatoRegionche rappresenta quattro regioni negli Stati Uniti in cui i prodotti sono venduti. - Mettiamo che vogliamo solo gli ordini relativi alle regioni West e Central. Vai ai filtri nell’angolo in alto a destra e fai clic su
Add, e poi suAdd again - Viene popolato un elenco di campi. Seleziona il campo
Regiono qualsiasi altro campo a tua scelta. - Ora vediamo un elenco di valori possibili per il campo selezionato. Seleziona quelli desiderati e fai clic su OK.
- Questo restituisce i dati filtrati a livello di connessione.
Tieni presente che sia la Custom SQL Query sia i filtri dell’origine dati dovrebbero essere usati solo per casi specifici. L’opzione migliore sarebbe prima collegare i dati a Tableau e poi usare i filtri all’interno di Tableau.

7. Analisi in Tableau
Dopo aver importato i dati dal server SQL in Tableau, è possibile analizzarli facilmente in Tableau. Analizziamo i dati presenti nel nostro foglio di lavoro in vari modi:
- Possiamo analizzare le vendite per stato

- Oppure possiamo trovare gli stati in cui le vendite superano 5000.

- Un altro punto di analisi potrebbe essere il confronto tra vendite e profitti.

Dunque, l’analisi in Tableau dopo aver ottenuto i dati da SQL Server è piuttosto lineare, proprio come qualsiasi altra analisi standard.
8. Conclusione
Usare SQL e Tableau insieme porta l’analisi dei dati a un livello superiore. Possiamo collegare facilmente SQL Server a Tableau ed estrarre direttamente i dati al suo interno. Tableau consente agli utenti di attivare e disattivare le connessioni con un clic per applicare query in-memory a un dataset più ampio. SQL è uno strumento molto utile e, se sfruttato insieme all’esperienza con Tableau, può rendere l’analisi più potente e ricca di insight.
Se vuoi approfondire SQL, segui il corso di DataCamp Intro to SQL for Data Science.

