Connettere i tuoi dati a Tableau Prep Builder con l'API Supermetrics [un tutorial passo-passo]

Pubblicato: 2022-01-11

Per creare un report fruibile e approfondito in Tableau, devi disporre di dati ben preparati e puliti.

Tuttavia, poiché le aziende dispongono di dati in molti luoghi e formati diversi, la pulizia dei dati per l'analisi può diventare un processo pesante.

Questo fino a quando Tableau non ha introdotto Tableau Prep Builder per consentire agli utenti di dati, inclusi analisti e esperti di marketing che potrebbero non avere profonde capacità analitiche, di trasformare i propri dati.

In questo articolo, ti mostrerò come connettere i tuoi dati a Tableau Prep Builder utilizzando l'API Supermetrics e condividerò alcuni modi in cui puoi sfruttare i tuoi dati lì.

Ecco i passaggi che attraverseremo:

  1. Installa Tableau Prep Builder
  2. Installa e configura TabPy
  3. Crea un piccolo script Python che conterrà la chiamata dell'API Supermetrics
  4. Crea i flussi in Tableau Prep Builder, che creerà per noi i file di estrazione di Tableau
Come connettere l'API Supermetrics a Tableau Prep Builder Flow

Al termine, potrai combinare l'output delle query dell'API Supermetrics con altre origini dati tramite Union e pianificare un aggiornamento incrementale di un'estrazione di Tableau con i dati della nostra API.

Suona bene? Iniziamo!

stella

Guarda l'API Supermetrics in azione

Scopri il modo più semplice per inserire i tuoi dati di marketing in Tableau o in qualsiasi altro strumento BI, database o data warehouse che supporti input JSON o CSV.

Inizia la prova gratuita

Passaggio 1: installa Tableau Prep Builder

Tableau Prep Builder è uno strumento di trasformazione dei dati che Tableau ha rilasciato nel 2018 per aiutare i suoi utenti a pulire e preparare i dati per l'analisi.

La cosa migliore di Tableau Prep Builder è che ti consente di visualizzare tutte le tue operazioni di trasformazione dei dati. In questo modo, sarai in grado di seguire ciò che sta accadendo con i tuoi dati e identificare rapidamente gli errori. Il risultato è l'output del tuo set di dati in Tableau Hyper Extract, ottimizzato per la creazione di report in Tableau.

Poiché Tableau Prep Builder è disponibile nella suite Tableau, potresti già accedervi.

Anche configurarlo è abbastanza semplice. Tutto quello che devi fare è scaricarlo dal sito Web di Tableau, installarlo sul tuo computer e, infine, inserire il codice di licenza o avviare la prova gratuita.

Passaggio 2: installa TabPy

TabPy è il secondo componente di cui abbiamo bisogno per questa soluzione.

TabPy è un'estensione Python per Tableau. Ti consente di eseguire script Python direttamente all'interno dei dashboard di Tableau o, cosa più importante per il nostro caso qui, all'interno di Tableau Prep Builder.

Puoi trovare le istruzioni di installazione sul Github del pacchetto. Ovviamente avrai bisogno di una versione recente di Python per farlo funzionare. Una volta completata l'installazione, puoi iniziare a utilizzare TabPy eseguendo il processo in background in una finestra del terminale. Ti dirà che è in esecuzione e in ascolto delle richieste in arrivo da Tableau sulla porta 9004.

L'ultima fase di preparazione per TabPy consiste nel configurare la connessione ad esso in Tableau Prep Builder.

Puoi trovare l'opzione richiesta nel menu "Aiuto" di Tableau Prep in "Aiuto" > "Impostazioni e prestazioni" > "Gestisci connessione estensione Analytics".

Per questa guida, assumiamo che tu lo stia configurando sul tuo computer locale, quindi tutto ciò che devi fare è assicurarti che TabPy sia ancora in esecuzione e che la porta che vedi nella finestra corrisponda alla porta su cui TabPy è in ascolto.

API Tableau Prep Supermetrics, connessione all'estensione di analisi

Fai clic sul pulsante "Accedi" e il gioco è fatto!

Passaggio 3: imposta lo script Python

È ora di impostare lo script Python.

Nel caso in cui sei preoccupato per quel passaggio, non esserlo. È piuttosto semplice. Lo script di cui abbiamo bisogno avrà solo poche righe di codice, la maggior parte delle quali sono il collegamento API di Supermetrics.

Puoi anche semplicemente copiarlo e incollarlo in un file di testo e sostituire "[PLACEHOLDER FOR YOUR API LINK]" con il tuo link:

 import requests import pandas as pd def get_data_to_flow(input): response = requests.get("[PLACEHOLDER FOR YOUR API LINK]") results = response.json() return pd.DataFrame(results['data'][1:], columns=results['data'][0])

Salvalo come file con estensione .py da qualche parte dove lo troverai facilmente di nuovo. Lo useremo nei seguenti passaggi.

Successivamente, generiamo un collegamento API in Supermetrics Query Manager e, mentre siamo lì, scaricheremo anche un campione dei nostri dati in formato CSV.

Per fare ciò, accedi al sito del team.

Tieni presente che puoi accedere a Supermetrics Query Manager con una licenza API Supermetrics valida. Se non hai ancora una licenza, inizia la tua prova gratuita di 14 giorni .

Quindi, scegli "Integrazioni" > "Gestione query". Vedrai una barra laterale sulla sinistra dello schermo. Inizia a costruire la tua query lì. In questo esempio, utilizzerò Google Ads come origine dati. Continua a costruire la tua query compilando questi campi:

  • Seleziona le date
  • Seleziona le metriche
  • Dividi per dimensioni
  • Filtro e opzioni

Al termine, fai clic su "Esegui". Vedrai i tuoi dati in una tabella di anteprima e in un formato JSON non elaborato.

API Tableau Prep Supermetrics, Query Manager

Ecco un tutorial su come iniziare con l'API Supermetrics.

Tableau Prep avrà bisogno di questo esempio per comprendere la struttura dei dati che arriverà nella risposta dell'API.

Nota che la selezione del formato è impostata su "JSON" e non su "Tableau" perché lasceremo che lo script Python, che è scritto per funzionare con la risposta in formato JSON, gestisca quella chiamata API. Quindi ho esportato i risultati come file CSV (1) e ho copiato l'URL dell'API nel file di script Python preparato (2).

Non dimenticare di salvare il file di script dopo aver incollato il collegamento all'API di Supermetrics!

Passaggio 4: riunisci tutto in Tableau Prep Builder

Ci siamo quasi!

Per far fluire i dati dall'API Supermetrics al flusso di Tableau Prep, ora dobbiamo collegare il file CSV che abbiamo scaricato dal passaggio precedente.

Poiché Tableau Prep Builder è piuttosto esigente riguardo ai tipi di dati, non accetterà l'output del nostro script Python senza questo passaggio. Il file CSV ha la stessa struttura dei dati dell'API Supermetrics, informando Tableau Prep Builder su come interpretarlo.

Tableau Prep Supermetrics API, connessione, file di testo

Dopo aver selezionato il file, Tableau Prep Builder avvierà un nuovo flusso e leggerà il contenuto del CSV. Puoi vedere nell'infobox che ha analizzato correttamente i tipi di campo rispettivamente come data, stringa e numero. Ed è esattamente quello che vogliamo.

API Tableau Prep Supermetrics, connessioni

È necessario aggiungere uno script come passaggio successivo nel flusso. Fallo facendo clic sul segno più accanto alla casella che rappresenta il file CSV e selezionando "Script".

API Tableau Prep Supermetrics, connessione aggiunta

È qui che possiamo usare TabPy. Quindi assicurati che il pulsante di opzione per "Tableau Python (TabPy) Server" sia attivato e che TabPy sia ancora in esecuzione sul tuo computer. Quindi vai al file di script che hai creato nel passaggio precedente.

Dobbiamo anche indicare a Tableau Prep Builder quali funzioni di quel file vogliamo utilizzare qui. Il nostro piccolo script ha solo una funzione, quindi se stai seguendo questa guida, digita il nome della funzione "get_data_to_flow" nel campo.

API Tableau Prep Supermetrics, script di connessione

Una volta eseguite queste impostazioni, Tableau Prep dovrebbe iniziare immediatamente a eseguire la query dell'API Supermetrics e i dati verranno visualizzati nella finestra di anteprima.

Congratulazioni! Hai appena caricato correttamente i dati dall'API di Supermetrics al flusso di Tableau Prep.

Sfrutta i tuoi dati in Tableau Prep Builder

Puoi controllare facilmente quali dati caricare tramite l'API Supermetrics modificando il collegamento API. Altrimenti, puoi utilizzare questo elemento di input dei dati nel flusso di Tableau come preferisci.

Se stai utilizzando i nostri URL brevi, puoi scoprire come modificare i parametri in questo articolo della documentazione.

Finché non modifichi la forma dei dati aggiungendo o eliminando colonne, puoi giocare con i risultati. Se devi modificare la forma dei dati, ricorda di modificare il file CSV di conseguenza in modo che Tableau Prep possa interpretare la risposta dell'API.

Ora, esploriamo alcune funzioni di Tableau Prep Builder che puoi utilizzare per sfruttare i tuoi dati per l'analisi.

Aggiungi i dati da Supermetrics a un set di dati CSV (UNION)

La prima cosa che possiamo fare è eseguire un'operazione UNION. Per questo, invece di fornire semplicemente il file CSV di esempio per Tableau Prep Builder per interpretare l'output dell'API, lo utilizzeremo anche come mezzo per importare dati statici.

Immagina di avere un insieme di dati storici che non cambierà più. Un caso d'uso comune sarebbe l'esportazione dei dati dell'anno scorso per una metrica, che vorresti utilizzare in un rapporto di Tableau, ma anche l'aggiunta di un set di dati aggiornato quotidianamente per mantenerlo aggiornato.

Ad esempio, ho configurato una query in Query Manager per ottenere i dati di Google Ads per il 2020 e ho scaricato i risultati come CSV.

API Tableau Prep Supermetrics, query json

Quindi, ho modificato il selettore della data da "L'anno scorso" a "Da inizio anno" e ho copiato il collegamento API per questa query nel file di script Python. Ecco come appare il file di script. Nota che la mia chiave API univoca è stata redatta.

API Tableau Prep Supermetrics, anteprima query json
API di Tableau Prep Supermetrics, get_api_data.py

Ora eseguiamo gli stessi passaggi di prima. Dobbiamo aggiungere un'operazione UNION e un 'Output' nel flusso:

  1. Avvia un nuovo flusso in Tableau Prep connettendoti prima al file CSV.
  2. Aggiungi un passaggio "Script" dopo il CSV con TabPy che serve la funzione di chiamata API.
  3. Aggiungi un passaggio "Unione" dopo lo script, quindi fai clic e trascina il passaggio CSV su di esso, formando un triangolo.
  4. Aggiungi un passaggio "Output" dopo UNION.
API Tableau Prep Supermetrics, funzione di output

L'esecuzione del flusso ora ci fornirà un iperestratto che può essere utilizzato come origine dati per il tuo progetto Tableau. E poiché la chiamata API ha un intervallo di date relativo (da inizio anno), puoi semplicemente continuare a rieseguire il flusso per aggiornare l'estrazione!

Puoi anche scegliere di salvare il file di output sul disco rigido locale o pubblicarlo direttamente su Tableau Server o Tableau Online per condividerlo con altri utenti Tableau della tua organizzazione.

Aggiornamento incrementale dell'estrazione con i dati di Supermetrics

Il metodo sopra descritto funzionerà perfettamente per quantità di dati di piccole e medie dimensioni. Tuttavia, una volta che le query all'API diventano più grandi e impegnative, in termini di risorse di runtime, è una buona idea eseguire un aggiornamento incrementale del set di dati invece di richiedere l'intervallo a tempo pieno su ogni esecuzione del flusso e sovrascrivere l'estrazione precedente .

Fortunatamente, Tableau Prep include un'opzione integrata per gli aggiornamenti incrementali di un file di estrazione esistente. Devi solo specificare quale colonna nella tabella di dati deve essere utilizzata per determinare le nuove righe di dati provenienti dall'aggiornamento. Il flusso si occuperà quindi del resto per te.

Tuttavia, Tableau Prep Builder non lo supporta per i dati tramite l'esecuzione di uno script.

Ecco come aggirare le limitazioni e creare una soluzione funzionante per l'aggiornamento incrementale dei dati.

Divideremo il processo in due parti:

Innanzitutto, creiamo un Tableau Hyper Extract che conterrà l'aggiornamento. Quindi applicalo all'origine dati effettiva nel secondo passaggio. Questo è importante perché l'aggiornamento incrementale di un'estrazione è effettivamente supportato quando un altro file di estrazione è l'origine dei dati di aggiornamento.

Tableau Prep, aggiornamento completo dell'estrazione intermedia e aggiornamento incrementale dei flussi di estrazione finale

Per arrivarci, creiamo un flusso che include di nuovo uno script. Utilizziamo un intervallo di tempo relativo nella nostra chiamata API che manterrà leggera la quantità di dati richiesti. In questo esempio uso "gli ultimi 10 giorni".

API Tableau Prep Supermetrics, visualizzazione del gestore query

Per creare il file di estrazione che sarà il nostro "Aggiornamento", dobbiamo utilizzare ciò che abbiamo imparato finora sugli script in Tableau Prep Builder.

Qui, ho utilizzato un file di estrazione esistente come input prima dell'istruzione di script per dimostrare che funziona anche e che il file CSV iniziale che abbiamo utilizzato è solo un passaggio necessario per eseguire lo script.

Senza l'operazione UNION, l'output di questo flusso sarà semplicemente quello che la nostra istruzione di script sta estraendo tramite l'API Supermetrics.

API Tableau Prep Supermetrics, funzione di output

Dopo aver salvato questo file di output sul mio disco come "increment.hyper", ora posso impostare il flusso finale che aggiornerà un estratto pubblicato utilizzato per diversi report.

API Tableau Prep Supermetrics, funzione di estrazione

Questo potrebbe sembrare controintuitivo, lo è stato sicuramente per me.

Ci stiamo connettendo al file di incremento in Tableau Prep Builder e tutto ciò che facciamo è aggiungere un "Output" che punti al file che abbiamo già e che vogliamo aggiornare.

Qui, ho una fase di pulizia opzionale nel flusso che separa i due. Il bit importante qui è abilitare l'aggiornamento incrementale su 'Input', il nostro file 'increment.hyper'. È necessario impostare il campo che verrà utilizzato per rilevare le nuove righe che entrano nel flusso. Nel nostro caso, è "Data".

Quindi, sceglieremo l'"Output" che punta alla destinazione che desideriamo aggiornare e abbineremo il campo "Data" dell'"Input" con il campo "Data" corrispondente nell'"Output".

Questa configurazione offre una nuova opzione per eseguire il flusso come aggiornamento incrementale. Grande!

API Tableau Prep Supermetrics, funzione di output, aggiornamento incrementale: aggiungi alla selezione della tabella

Questo metodo conserva tutti i dati che abbiamo già nel file di output. Può essere un enorme estratto con milioni di righe: in questa procedura stiamo solo aggiungendo nuove righe. Una volta creati questi flussi, bastano pochi secondi per eseguirli e aggiornare i dati. Dopotutto, ora stiamo interrogando l'API Supermetrics solo per 10 giorni di dati.

Questo è tutto!

L'utilizzo dell'API Supermetrics come origine dati in Tableau Prep Builder ti aiuta a eseguire complesse attività di modellazione dei dati che di solito richiedono un data warehouse.

Se desideri potenziare i tuoi rapporti di Tableau, prenota una demo con il nostro team di vendita o inizia una prova gratuita di 14 giorni dell'API di Supermetrics.