Connecter vos données à Tableau Prep Builder avec l'API Supermetrics [un didacticiel pas à pas]

Publié: 2022-01-11

Afin de créer un rapport exploitable et pertinent dans Tableau, vous devez disposer de données bien préparées et propres.

Cependant, étant donné que les entreprises disposent de données dans de nombreux endroits et formats différents, le nettoyage des données à des fins d'analyse peut devenir un processus lourd.

Jusqu'à ce que Tableau lance Tableau Prep Builder pour permettre aux utilisateurs de données, y compris les analystes et les spécialistes du marketing qui n'ont peut-être pas de compétences analytiques approfondies, de transformer leurs données.

Dans cet article, je vais vous montrer comment connecter vos données à Tableau Prep Builder à l'aide de l'API Supermetrics et partager quelques façons d'exploiter vos données là-bas.

Voici les étapes que nous allons suivre :

  1. Installer Tableau Prep Builder
  2. Installer et configurer TabPy
  3. Créez un petit script Python qui contiendra l'appel de l'API Supermetrics
  4. Créez les flux dans Tableau Prep Builder, qui créera pour nous les fichiers d'extrait Tableau
Comment connecter l'API Supermetrics à Tableau Prep Builder Flow

Lorsque nous aurons terminé, vous pourrez combiner la sortie des requêtes de l'API Supermetrics avec d'autres sources de données via Union et planifier une actualisation incrémentielle d'un extrait Tableau avec les données de notre API.

Ça a l'air bien? Commençons!

étoile

Voir l'API Supermetrics en action

Découvrez le moyen le plus simple d'introduire vos données marketing dans Tableau ou tout autre outil de BI, base de données ou entrepôt de données prenant en charge les entrées JSON ou CSV.

Commencer l'essai gratuit

Étape 1 : Installer Tableau Prep Builder

Tableau Prep Builder est un outil de transformation de données que Tableau a lancé en 2018 pour aider ses utilisateurs à nettoyer et à préparer les données pour l'analyse.

La meilleure chose à propos de Tableau Prep Builder est qu'il vous permet de visualiser toutes vos opérations de transformation de données. De cette façon, vous pourrez suivre ce qui se passe avec vos données et identifier rapidement les erreurs. Le résultat est la sortie de votre ensemble de données dans Tableau Hyper Extract, qui est optimisé pour la création de rapports dans Tableau.

Étant donné que Tableau Prep Builder est disponible dans la suite Tableau, vous y avez peut-être déjà accès.

La configuration est également assez facile. Tout ce que vous avez à faire est de le télécharger depuis le site Web de Tableau, de l'installer sur votre ordinateur, et enfin, d'entrer votre clé de licence ou de démarrer l'essai gratuit.

Étape 2 : Installer TabPy

TabPy est le deuxième composant dont nous avons besoin pour cette solution.

TabPy est une extension Python pour Tableau. Il vous permet d'exécuter des scripts Python directement dans les tableaux de bord Tableau ou, et surtout dans notre cas, dans Tableau Prep Builder.

Vous pouvez trouver les instructions d'installation sur le Github du package. Bien sûr, vous aurez besoin d'une version récente de Python pour que cela fonctionne. Une fois l'installation terminée, vous pouvez commencer à utiliser TabPy en exécutant le processus d'arrière-plan dans une fenêtre de terminal. Il vous indiquera qu'il est en cours d'exécution et qu'il écoute les requêtes entrantes de Tableau sur le port 9004.

La dernière étape de préparation pour TabPy consiste à configurer la connexion à celui-ci dans Tableau Prep Builder.

Vous pouvez trouver l'option requise dans le menu « Aide » de Tableau Prep sous « Aide » > « Paramètres et performances » > « Gérer la connexion de l'extension Analytics ».

Pour ce guide, nous supposons que vous le configurez sur votre ordinateur local. Il vous suffit donc de vous assurer que TabPy est toujours en cours d'exécution et que le port que vous voyez dans la fenêtre correspond au port sur lequel TabPy écoute.

API Tableau Prep Supermetrics, connexion à l'extension d'analyse

Cliquez sur le bouton "Connexion", et vous avez terminé !

Étape 3 : Configurer le script Python

Il est temps de configurer le script Python.

Si cette étape vous inquiète, ne le soyez pas. C'est assez simple. Le script dont nous avons besoin n'aura que quelques lignes de code, dont la plupart sont le lien API de Supermetrics.

Vous pouvez même simplement copier et coller ceci dans un fichier texte et remplacer le "[PLACEHOLDER FOR YOUR API LINK]" par votre propre lien :

 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])

Enregistrez-le en tant que fichier avec l'extension .py quelque part où vous le retrouverez facilement. Nous allons l'utiliser dans les étapes suivantes.

Générons ensuite un lien API dans Supermetrics Query Manager, et pendant que nous y sommes, nous téléchargerons également un échantillon de nos données au format CSV.

Pour ce faire, connectez-vous au site de l'équipe.

Notez que vous pouvez accéder au Supermetrics Query Manager avec une licence d'API Supermetrics valide. Si vous n'avez pas encore de licence, démarrez votre essai gratuit de 14 jours .

Ensuite, choisissez 'Intégrations' > 'Gestionnaire de requêtes'. Vous verrez une barre latérale sur la gauche de votre écran. Commencez à y créer votre requête. Dans cet exemple, j'utiliserai Google Ads comme source de données. Continuez à construire votre requête en remplissant ces champs :

  • Sélectionnez des dates
  • Sélectionnez des statistiques
  • Fractionner par dimensions
  • Filtre & Options

Une fois que vous avez terminé, cliquez sur "Exécuter". Vous verrez vos données dans un tableau d'aperçu et au format JSON brut.

API Tableau Prep Supermetrics, gestionnaire de requêtes

Voici un tutoriel sur la façon de démarrer avec l'API Supermetrics.

Tableau Prep aura besoin de cet exemple pour comprendre la structure des données qui viendra dans la réponse de l'API.

Notez que la sélection de format est définie sur "JSON" et non sur "Tableau", car nous laisserons le script Python, qui est écrit pour fonctionner avec la réponse au format JSON, gérer cet appel d'API. Ensuite, j'ai exporté les résultats sous forme de fichier CSV (1) et copié l'URL de l'API dans le fichier de script Python préparé (2).

N'oubliez pas d'enregistrer le fichier de script après avoir collé le lien de l'API Supermetrics !

Étape 4 : Rassemblez le tout dans Tableau Prep Builder

Nous y sommes presque!

Pour que les données circulent de l'API Supermetrics dans votre flux Tableau Prep, nous devons maintenant connecter le fichier CSV que nous avons téléchargé à l'étape précédente.

Étant donné que Tableau Prep Builder est assez pointilleux sur les types de données, il n'acceptera pas la sortie de notre script Python sans cette étape. Le fichier CSV a la même structure que les données de l'API Supermetrics, indiquant à Tableau Prep Builder comment interpréter cela.

API Tableau Prep Supermetrics, connexion, fichier texte

Après avoir sélectionné le fichier, Tableau Prep Builder démarre un nouveau flux et lit le contenu du CSV. Vous pouvez voir dans l'infobox qu'il a correctement analysé les types de champs en tant que date, chaîne et nombre, respectivement. Et c'est exactement ce que nous voulons.

API Tableau Prep Supermetrics, connexions

Nous devons ajouter un script comme prochaine étape du flux. Pour ce faire, cliquez sur le signe plus à côté de la case représentant le fichier CSV et sélectionnez "Script".

API Tableau Prep Supermetrics, ajout de connexion

C'est là que nous arrivons à utiliser TabPy. Assurez-vous donc que le bouton radio pour 'Tableau Python (TabPy) Server' est activé et que TabPy est toujours en cours d'exécution sur votre machine. Accédez ensuite au fichier de script que vous avez créé à l'étape précédente.

Nous devons également indiquer à Tableau Prep Builder quelles fonctions de ce fichier nous voulons utiliser ici. Notre petit script n'a qu'une seule fonction, donc si vous suivez ce guide, tapez le nom de la fonction "get_data_to_flow" dans le champ.

API Tableau Prep Supermetrics, script de connexion

Une fois ces paramètres définis, Tableau Prep devrait immédiatement commencer à exécuter la requête de l'API Supermetrics et les données apparaîtront dans la fenêtre d'aperçu.

Toutes nos félicitations! Vous venez de charger avec succès les données de l'API Supermetrics dans votre flux Tableau Prep.

Exploitez vos données dans Tableau Prep Builder

Vous pouvez facilement contrôler les données à charger via l'API Supermetrics en modifiant le lien API. Sinon, vous pouvez utiliser cet élément d'entrée de données dans le flux Tableau comme vous le souhaitez.

Si vous utilisez nos URL courtes, vous pouvez découvrir comment modifier les paramètres dans cet article de documentation.

Tant que vous ne modifiez pas la forme des données en ajoutant ou en supprimant des colonnes, vous pouvez jouer avec les résultats. Si vous devez modifier la forme des données, n'oubliez pas de modifier le fichier CSV en conséquence afin que Tableau Prep puisse interpréter la réponse de l'API.

Explorons maintenant certaines fonctions de Tableau Prep Builder que vous pouvez utiliser pour exploiter vos données à des fins d'analyse.

Ajouter des données de Supermetrics à un ensemble de données CSV (UNION)

La première chose que nous pouvons faire est d'effectuer une opération UNION. Pour cela, au lieu de simplement fournir l'exemple de fichier CSV à Tableau Prep Builder pour interpréter la sortie de l'API, nous l'utiliserons également comme moyen d'importer des données statiques.

Imaginez avoir un ensemble de données historiques qui ne changeront plus. Un cas d'utilisation courant serait d'exporter les données de l'année dernière pour une métrique, que vous souhaitez utiliser dans un rapport Tableau, mais également d'y ajouter un ensemble de données mis à jour quotidiennement pour le maintenir à jour.

Par exemple, j'ai configuré une requête dans le gestionnaire de requêtes pour obtenir des données Google Ads pour 2020 et j'ai téléchargé les résultats au format CSV.

API Tableau Prep Supermetrics, requête json

Ensuite, j'ai changé le sélecteur de date de 'L'année dernière' à 'Année à ce jour' et j'ai copié le lien API pour cette requête dans le fichier de script Python. Voici à quoi ressemble le fichier de script. Notez que ma clé API unique a été expurgée.

API Tableau Prep Supermetrics, aperçu de la requête json
API Tableau Prep Supermetrics, get_api_data.py

Maintenant, nous passons par les mêmes étapes qu'auparavant. Nous devons ajouter une opération UNION et une 'Sortie' dans le flux :

  1. Démarrez un nouveau flux dans Tableau Prep en vous connectant d'abord au fichier CSV.
  2. Ajoutez une étape 'Script' après le CSV avec TabPy servant la fonction d'appel d'API.
  3. Ajoutez une étape "Union" après le script, puis cliquez et faites glisser l'étape CSV dessus, formant un triangle.
  4. Ajoutez une étape 'Sortie' après l'UNION.
API Tableau Prep Supermetrics, fonction de sortie

L'exécution du flux maintenant nous donnera un hyper-extrait qui peut être utilisé comme source de données pour votre projet Tableau. Et parce que l'appel d'API a une plage de dates relative (année à ce jour), vous pouvez simplement continuer à réexécuter le flux pour mettre à jour l'extrait !

Vous pouvez également choisir d'enregistrer le fichier de sortie sur votre disque dur local ou de le publier directement sur Tableau Server ou Tableau Online pour le partager avec d'autres utilisateurs Tableau de votre organisation.

Actualisation incrémentielle des extraits avec les données de Supermetrics

La méthode décrite ci-dessus fonctionnera très bien pour les petites et moyennes quantités de données. Cependant, une fois que vos requêtes à l'API deviennent plus importantes et plus exigeantes - en termes de ressources d'exécution - c'est une bonne idée d'effectuer une actualisation incrémentielle de l'ensemble de données au lieu de demander la plage de temps plein à chaque exécution de flux et d'écraser l'extrait précédent. .

Heureusement, Tableau Prep est livré avec une option intégrée pour les mises à jour incrémentielles d'un fichier d'extrait existant. Il vous suffit de spécifier quelle colonne de la table de données doit être utilisée pour déterminer les nouvelles lignes de données provenant de l'actualisation. Le flux s'occupera alors du reste pour vous.

Cependant, Tableau Prep Builder ne le prend pas en charge pour les données via l'exécution d'un script.

Voici comment contourner les limitations et créer une solution fonctionnelle pour l'actualisation incrémentielle des données.

Nous allons diviser le processus en deux parties :

Tout d'abord, nous créons un Tableau Hyper Extract qui contiendra la mise à jour. Ensuite, appliquez cela à la source de données réelle dans la deuxième étape. Ceci est important car la mise à jour incrémentielle d'un extrait est en effet prise en charge lorsqu'un autre fichier d'extrait est la source des données d'actualisation.

Tableau Prep, actualisation complète de l'extrait intermédiaire et actualisation incrémentielle des flux d'extrait finaux

Pour y arriver, nous créons un flux qui inclut à nouveau un script. Nous utilisons une plage de temps relative dans notre appel API qui gardera la quantité de données que nous demandons légère. J'utilise 'les 10 derniers jours' dans cet exemple.

API Tableau Prep Supermetrics, vue du gestionnaire de requêtes

Pour créer le fichier d'extrait qui sera notre « Rafraîchissement », nous devons utiliser ce que nous avons appris jusqu'à présent sur les scripts dans Tableau Prep Builder.

Ici, j'ai utilisé un fichier d'extrait existant comme entrée avant l'étape de script pour démontrer qu'il fonctionne également et que le fichier CSV initial que nous avons utilisé n'est qu'une étape nécessaire pour exécuter le script.

Sans l'opération UNION, la sortie de ce flux sera simplement ce que notre étape de script extrait via l'API Supermetrics.

API Tableau Prep Supermetrics, fonction de sortie

Après avoir enregistré ce fichier de sortie sur mon lecteur sous le nom "increment.hyper", je peux maintenant configurer le flux final qui mettra à jour un extrait publié utilisé pour plusieurs rapports.

API Tableau Prep Supermetrics, fonction d'extraction

Cela peut sembler contre-intuitif - c'était certainement pour moi.

Nous nous connectons au fichier d'incrémentation dans Tableau Prep Builder, et tout ce que nous faisons est d'ajouter une « sortie » qui pointe vers le fichier que nous avons déjà et que nous voulons mettre à jour.

Ici, j'ai une étape de nettoyage facultative dans le flux qui sépare les deux. Le bit important ici est d'activer l'actualisation incrémentielle sur le 'Input', notre fichier 'increment.hyper'. Nous devons définir le champ qui sera utilisé pour détecter les nouvelles lignes entrant dans le flux. Dans notre cas, c'est 'Date'.

Ensuite, nous choisirons la 'Sortie' qui pointe vers la destination que nous souhaitons mettre à jour et faire correspondre le champ 'Date' de 'l'Entrée' avec le champ 'Date' correspondant dans la 'Sortie'.

Cette configuration nous offre une nouvelle option d'exécution du flux en tant qu'actualisation incrémentielle. Génial!

API Tableau Prep Supermetrics, fonction de sortie, actualisation incrémentielle — ajouter à la sélection de tableau

Cette méthode préserve toutes les données que nous avons déjà dans le fichier de sortie. Il peut s'agir d'un extrait énorme avec des millions de lignes - nous y ajoutons simplement de nouvelles lignes dans cette procédure. Une fois que vous avez créé ces flux, quelques secondes suffisent pour les exécuter et mettre à jour les données. Après tout, nous n'interrogeons désormais l'API Supermetrics que pour 10 jours de données.

C'est ça!

L'utilisation de l'API Supermetrics comme source de données dans votre Tableau Prep Builder vous aide à effectuer des tâches de modélisation de données complexes qui nécessitent généralement un entrepôt de données.

Si vous souhaitez optimiser vos rapports Tableau, réservez une démonstration avec notre équipe commerciale ou démarrez un essai gratuit de 14 jours de l'API Supermetrics.