A partire dalla versione
Tableau 2020.4.1, hai la possibilità di schedulare e monitorare l’esecuzione dei flussi Prep usando le
Tableau REST APIs, senza acquistare l’Add-on Data Management.
In questo breve articolo,
Pietro Gentini, Head of BI Solutions di Ecoh Media e Tableau Certified Architect, ci spiega come farlo in tre step.
Tutti i dettagli e gli script da utilizzare sono sull’
articolo integrale, pubblicato da Pietro su Medium – Tableau Server Insight Blog. Step 1. Installa il Client Tableau Server (TSC)
Per farlo, usiamo il
Client Tableau Server (TSC), una Python library per interagire con Tableau Server via REST API:
https://tableau.github.io/server-client-python/docs/TSC richiede Python versione 3.5 o successiva per funzionare.
Step 2. Autenticati con un Token di Accesso Personale (PAT)
Per connetterti in sicurezza a Tableau Server o a Tableau Online tramite Rest APIs, la migliore scelta è di usare un
PAT, evitando di inserire il tuo username e la password nel codice Python.
Step 3. Crea un App Python per eseguire i flussi Prep
Usando il TSC, crea una connessione al tuo Tableau Server. Ricordati l’attributo
use_server_version=True per essere sicuro di utilizzare l’ultima versione delle REST API supportata dal tuo Tableau Server (i Flow Methods sono supportati dalla versione 3.3).
Quindi, inizializza un’istanza di
PersonalAccessTokenAuth e utilizzala per autenticarti con il metodo
server.auth.sign_in().
Recupera la lista di tutti i flussi Prep da eseguire con il metodo
server.flows.get() e crea un loop utilizzando il metodo
server.flows.refresh() per effettuare il refresh di un singol flusso.
Puoi monitorare tutte le esecuzioni in background dei job di refresh utilizzando, ad esempio, un’
utility di polling (come
https://pypi.org/project/polling2/) per verificare ciclicamente lo stato di esecuzione del job tramite
server.jobs.get_by_id(job.id).finish_code L’esecuzione del polling termina quando finish_code sarà diverso da -1 (0 for success, 1 for error or 2 for cancelled).
A questo punto dovresti avere tutto ciò di cui hai bisogno per
eseguire e monitorare programmaticamente i tuoi flussi Tableau Prep su Tableau Server o Tableau Online.
Conclusioni
Se fai largo uso di
Tableau Prep per i processi di preparazione dei dati per la tua organizzazione, l’adozione dell’add-on Data Management è sicuramente raccomandata. Invece, in un contesto d’uso più limitato o per iniziare a utilizzare Tableau Prep sul web, puoi creare uno
script per eseguire e monitorare i tuoi flussi.
Con TSC hai bisogno solo di poche righe di
codice Python ma, chiaramente, puoi usare le REST API di Tableau con qualsiasi altro linguaggio di programmazione.