Verbinden Ihrer Daten mit Tableau Prep Builder mit der Supermetrics-API [eine Schritt-für-Schritt-Anleitung]
Veröffentlicht: 2022-01-11Um einen umsetzbaren und aufschlussreichen Bericht in Tableau zu erstellen, benötigen Sie gut aufbereitete und saubere Daten.
Da Unternehmen jedoch über Daten an vielen verschiedenen Orten und in vielen verschiedenen Formaten verfügen, kann die Bereinigung von Daten für die Analyse zu einem aufwendigen Prozess werden.
Das war, bis Tableau Tableau Prep Builder einführte, um Datenbenutzern – einschließlich Analysten und Marketingfachleuten, die möglicherweise nicht über tiefgreifende analytische Fähigkeiten verfügen – die Möglichkeit zu geben, ihre Daten zu transformieren.
In diesem Artikel zeige ich Ihnen, wie Sie Ihre Daten mithilfe der Supermetrics-API mit Tableau Prep Builder verbinden, und zeige Ihnen einige Möglichkeiten, wie Sie Ihre Daten dort nutzen können.
Hier sind die Schritte, die wir durchlaufen werden:
- Installieren Sie Tableau Prep Builder
- TabPy installieren und einrichten
- Erstellen Sie ein kleines Python-Skript, das den Supermetrics-API-Aufruf enthält
- Erstellen Sie die Schemata in Tableau Prep Builder, wodurch Tableau-Extraktdateien für uns erstellt werden

Wenn wir fertig sind, können Sie die Ausgabe von Supermetrics-API-Abfragen mit anderen Datenquellen über Union kombinieren und eine inkrementelle Aktualisierung eines Tableau-Extrakts mit Daten aus unserer API planen.
Hört sich gut an? Lass uns anfangen!
Sehen Sie sich die Supermetrics-API in Aktion an
Entdecken Sie die einfachste Möglichkeit, Ihre Marketingdaten in Tableau oder andere BI-Tools, Datenbanken oder Data Warehouses einzuspeisen, die JSON- oder CSV-Eingaben unterstützen.
Schritt 1: Installieren Sie Tableau Prep Builder
Tableau Prep Builder ist ein Datentransformationstool, das Tableau 2018 herausgebracht hat, um seinen Benutzern beim Bereinigen und Vorbereiten von Daten für die Analyse zu helfen.
Das Beste an Tableau Prep Builder ist, dass Sie damit alle Ihre Datentransformationsvorgänge visualisieren können. So können Sie verfolgen, was mit Ihren Daten passiert, und Fehler schnell erkennen. Das Ergebnis ist die Ausgabe Ihres Datensatzes in Tableau Hyper Extract, das für die Erstellung von Berichten in Tableau optimiert ist.
Da Tableau Prep Builder in der Tableau-Suite verfügbar ist, haben Sie möglicherweise bereits Zugriff darauf.
Das Einrichten ist auch ganz einfach. Alles, was Sie tun müssen, ist, es von der Tableau-Website herunterzuladen, auf Ihrem Computer zu installieren und schließlich Ihren Lizenzschlüssel einzugeben oder die kostenlose Testversion zu starten.
Schritt 2: Installieren Sie TabPy
TabPy ist die zweite Komponente, die wir für diese Lösung benötigen.
TabPy ist eine Python-Erweiterung für Tableau. Damit können Sie Python-Skripte direkt in Tableau-Dashboards oder, was für unseren Fall hier am wichtigsten ist, in Tableau Prep Builder ausführen.
Die Installationsanweisungen finden Sie auf dem Github des Pakets. Natürlich benötigen Sie eine aktuelle Version von Python, damit es funktioniert. Sobald die Installation abgeschlossen ist, können Sie TabPy verwenden, indem Sie den Hintergrundprozess in einem Terminalfenster ausführen. Es teilt Ihnen mit, dass es ausgeführt wird und auf eingehende Anfragen von Tableau auf Port 9004 wartet.
Die letzte Vorbereitung für TabPy besteht darin, die Verbindung dazu in Tableau Prep Builder zu konfigurieren.
Sie finden die erforderliche Option im Menü „Hilfe“ von Tableau Prep unter „Hilfe“ > „Einstellungen und Leistung“ > „Analytics-Erweiterungsverbindung verwalten“.
Für diese Anleitung gehen wir davon aus, dass Sie dies auf Ihrem lokalen Computer einrichten. Sie müssen also nur sicherstellen, dass TabPy noch ausgeführt wird und dass der Port, den Sie im Fenster sehen, mit dem Port übereinstimmt, auf dem TabPy lauscht.

Klicken Sie auf die Schaltfläche „Anmelden“ und Sie sind fertig!
Schritt 3: Richten Sie das Python-Skript ein
Es ist Zeit, das Python-Skript einzurichten.
Falls Sie sich über diesen Schritt Sorgen machen, seien Sie nicht besorgt. Es ist ziemlich einfach. Das benötigte Skript besteht aus nur wenigen Codezeilen, von denen die meisten der API-Link von Supermetrics sind.
Sie können dies sogar einfach kopieren und in eine Textdatei einfügen und den '[PLACEHOLDER FOR YOUR API LINK]' durch Ihren eigenen Link ersetzen:
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])
Speichern Sie dies als Datei mit der Erweiterung .py an einem Ort, an dem Sie es leicht wiederfinden. Wir werden dies in den folgenden Schritten verwenden.
Lassen Sie uns als Nächstes einen API-Link im Supermetrics Query Manager generieren, und während wir dort sind, werden wir auch ein Beispiel unserer Daten im CSV-Format herunterladen.
Melden Sie sich dazu auf der Team-Site an.
Beachten Sie, dass Sie mit einer gültigen Supermetrics-API-Lizenz auf den Supermetrics Query Manager zugreifen können. Wenn Sie noch keine Lizenz haben, starten Sie Ihre 14-tägige kostenlose Testversion .
Wählen Sie dann „Integrationen“ > „Abfragemanager“. Auf der linken Seite Ihres Bildschirms sehen Sie eine Seitenleiste. Beginnen Sie dort mit der Erstellung Ihrer Abfrage. In diesem Beispiel verwende ich Google Ads als Datenquelle. Fahren Sie mit dem Erstellen Ihrer Abfrage fort, indem Sie diese Felder ausfüllen:
- Daten auswählen
- Metriken auswählen
- Nach Dimensionen aufgeteilt
- Filteroptionen
Wenn Sie fertig sind, klicken Sie auf „Ausführen“. Sie sehen Ihre Daten in einer Vorschautabelle und im rohen JSON-Format.

Hier ist ein Tutorial für die ersten Schritte mit der Supermetrics-API.
Tableau Prep benötigt dieses Beispiel, um die Datenstruktur zu verstehen, die in der API-Antwort enthalten sein wird.
Beachten Sie, dass die Formatauswahl auf „JSON“ und nicht auf „Tableau“ festgelegt ist, da wir das Python-Skript – das für die Arbeit mit der Antwort im JSON-Format geschrieben ist – diesen API-Aufruf verarbeiten lassen. Dann habe ich die Ergebnisse als CSV-Datei exportiert (1) und die API-URL in die vorbereitete Python-Skriptdatei kopiert (2).
Vergessen Sie nicht, die Skriptdatei zu speichern, nachdem Sie den Supermetrics-API-Link eingefügt haben!
Schritt 4: Bringen Sie alles in Tableau Prep Builder zusammen
Wir sind fast da!
Damit Daten von der Supermetrics-API in Ihren Tableau Prep-Flow fließen, müssen wir jetzt die CSV-Datei verbinden, die wir im vorherigen Schritt heruntergeladen haben.
Da Tableau Prep Builder bei den Datentypen ziemlich wählerisch ist, akzeptiert es die Ausgabe unseres Python-Skripts ohne diesen Schritt nicht. Die CSV-Datei hat die gleiche Struktur wie die Daten aus der Supermetrics-API und informiert Tableau Prep Builder darüber, wie diese zu interpretieren sind.

Nach Auswahl der Datei startet Tableau Prep Builder einen neuen Ablauf und liest den Inhalt der CSV-Datei ein. Sie können in der Infobox sehen, dass die Feldtypen korrekt als Datum, Zeichenfolge bzw. Zahl geparst wurden. Und genau das wollen wir.

Als nächsten Schritt im Ablauf müssen wir ein Skript hinzufügen. Klicken Sie dazu auf das Pluszeichen neben dem Feld, das die CSV-Datei darstellt, und wählen Sie „Skript“.

Hier können wir TabPy verwenden. Stellen Sie daher sicher, dass das Optionsfeld für 'Tableau Python (TabPy) Server' aktiviert ist und dass TabPy noch auf Ihrem Computer ausgeführt wird. Navigieren Sie dann zu der Skriptdatei, die Sie im vorherigen Schritt erstellt haben.

Wir müssen Tableau Prep Builder auch mitteilen, welche Funktionen aus dieser Datei wir hier verwenden möchten. Unser winziges Skript hat nur eine Funktion. Wenn Sie also dieser Anleitung folgen, geben Sie den Funktionsnamen „get_data_to_flow“ in das Feld ein.

Nachdem diese Einstellungen vorgenommen wurden, sollte Tableau Prep sofort mit der Ausführung der Supermetrics-API-Abfrage beginnen, und die Daten werden im Vorschaufenster angezeigt.
Herzliche Glückwünsche! Sie haben gerade erfolgreich Daten aus der Supermetrics-API in Ihren Tableau Prep-Ablauf geladen.
Nutzen Sie Ihre Daten in Tableau Prep Builder
Sie können ganz einfach steuern, welche Daten über die Supermetrics-API geladen werden sollen, indem Sie den API-Link bearbeiten. Ansonsten können Sie dieses Dateneingabeelement beliebig im Tableau-Flow verwenden.
Wenn Sie unsere Kurz-URLs verwenden, erfahren Sie in diesem Dokumentationsartikel, wie Sie Parameter bearbeiten.
Solange Sie die Form der Daten nicht durch Hinzufügen oder Löschen von Spalten ändern, können Sie mit den Ergebnissen herumspielen. Wenn Sie die Form der Daten ändern müssen, denken Sie daran, die CSV-Datei entsprechend zu ändern, damit Tableau Prep die API-Antwort interpretieren kann.
Sehen wir uns nun einige Funktionen in Tableau Prep Builder an, mit denen Sie Ihre Daten für die Analyse nutzen können.
Daten aus Supermetrics an einen CSV-Datensatz anhängen (UNION)
Als erstes können wir eine UNION-Operation durchführen. Anstatt nur die CSV-Beispieldatei für Tableau Prep Builder bereitzustellen, um die API-Ausgabe zu interpretieren, verwenden wir sie auch als Mittel zum Importieren statischer Daten.
Stellen Sie sich vor, Sie haben einen Satz historischer Daten, die sich nicht mehr ändern. Ein häufiger Anwendungsfall wäre der Export der Daten des letzten Jahres für eine Metrik, die Sie in einem Tableau-Bericht verwenden möchten, aber auch das Anhängen eines täglich aktualisierten Datensatzes daran, um ihn auf dem neuesten Stand zu halten.
Beispielsweise habe ich im Abfragemanager eine Abfrage konfiguriert, um Google Ads-Daten für 2020 abzurufen, und die Ergebnisse als CSV heruntergeladen.

Dann habe ich die Datumsauswahl von „Letztes Jahr“ in „Jahr bis heute“ geändert und den API-Link für diese Abfrage in die Python-Skriptdatei kopiert. So sieht die Skriptdatei aus. Beachten Sie, dass mein eindeutiger API-Schlüssel redigiert wurde.


Jetzt gehen wir die gleichen Schritte wie zuvor durch. Wir müssen eine UNION-Operation und eine „Ausgabe“ im Fluss hinzufügen:
- Starten Sie ein neues Schema in Tableau Prep, indem Sie zuerst eine Verbindung zur CSV-Datei herstellen.
- Fügen Sie nach der CSV-Datei einen „Skript“-Schritt hinzu, wobei TabPy die API-Aufruffunktion bereitstellt.
- Fügen Sie nach dem Skript einen „Union“-Schritt hinzu, klicken Sie dann auf den CSV-Schritt und ziehen Sie ihn darauf, sodass ein Dreieck entsteht.
- Fügen Sie nach der UNION einen 'Output'-Schritt hinzu.

Wenn Sie das Schema jetzt ausführen, erhalten wir einen Hyperextrakt, der als Datenquelle für Ihr Tableau-Projekt verwendet werden kann. Und da der API-Aufruf einen relativen Datumsbereich hat (bisheriges Jahr), können Sie den Flow einfach immer wieder neu ausführen, um den Extrakt zu aktualisieren!
Sie können die Ausgabedatei auch auf Ihrer lokalen Festplatte speichern oder sie direkt auf einem Tableau Server oder Tableau Online veröffentlichen, um sie mit anderen Tableau-Benutzern in Ihrer Organisation zu teilen.
Inkrementelle Extraktaktualisierung mit Daten aus Supermetrics
Die oben beschriebene Methode eignet sich hervorragend für kleine bis mittlere Datenmengen. Sobald Ihre Abfragen an die API jedoch größer und anspruchsvoller werden – in Bezug auf Laufzeitressourcen – ist es eine gute Idee, eine inkrementelle Aktualisierung des Datensatzes durchzuführen, anstatt den Vollzeitbereich bei jeder Flow-Ausführung anzufordern und den vorherigen Extrakt zu überschreiben .
Glücklicherweise verfügt Tableau Prep über eine integrierte Option für inkrementelle Aktualisierungen einer vorhandenen Extraktdatei. Sie müssen nur angeben, welche Spalte in der Datentabelle verwendet werden soll, um die neuen Datenzeilen zu ermitteln, die aus der Aktualisierung stammen. Der Flow erledigt dann den Rest für Sie.
Tableau Prep Builder unterstützt dies jedoch nicht für Daten durch eine Skriptausführung.
So umgehen Sie die Einschränkungen und erstellen eine funktionierende Lösung für die inkrementelle Datenaktualisierung.
Wir werden den Prozess in zwei Teile aufteilen:
Zuerst erstellen wir einen Tableau Hyper Extract, der das Update enthalten wird. Wenden Sie diese dann im zweiten Schritt auf die eigentliche Datenquelle an. Dies ist wichtig, da das inkrementelle Aktualisieren eines Extrakts tatsächlich unterstützt wird, wenn eine andere Extraktdatei die Quelle der Aktualisierungsdaten ist.

Um dorthin zu gelangen, erstellen wir einen Flow, der wieder ein Skript enthält. Wir verwenden in unserem API-Aufruf einen relativen Zeitbereich, der die von uns angeforderte Datenmenge gering hält. Ich verwende in diesem Beispiel „die letzten 10 Tage“.

Um die Extraktdatei zu erstellen, die unsere „Auffrischung“ sein wird, müssen wir das anwenden, was wir bisher über Skripte in Tableau Prep Builder gelernt haben.
Hier habe ich eine vorhandene Extraktdatei als Eingabe vor dem Skriptschritt verwendet, um zu demonstrieren, dass es auch funktioniert und dass die ursprüngliche CSV-Datei, die wir verwendet haben, nur ein notwendiger Schritt zum Ausführen des Skripts ist.
Ohne die UNION-Operation ist die Ausgabe dieses Flows einfach das, was unser Skriptschritt über die Supermetrics-API abruft.

Nachdem ich diese Ausgabedatei als „increment.hyper“ auf meinem Laufwerk gespeichert habe, kann ich jetzt den endgültigen Ablauf einrichten, der einen veröffentlichten Extrakt aktualisiert, der für mehrere Berichte verwendet wird.

Das mag kontraintuitiv aussehen – für mich war es das sicher.
Wir stellen eine Verbindung zur Inkrementdatei in Tableau Prep Builder her und fügen lediglich eine „Ausgabe“ hinzu, die auf die Datei verweist, die wir bereits haben und aktualisieren möchten.
Hier habe ich einen optionalen Reinigungsschritt im Fluss, der die beiden trennt. Der wichtige Teil hier ist die Aktivierung der inkrementellen Aktualisierung für die 'Input', unsere 'increment.hyper'-Datei. Wir müssen das Feld festlegen, das verwendet wird, um neue Zeilen zu erkennen, die in den Fluss kommen. In unserem Fall ist das „Datum“.
Dann wählen wir die „Ausgabe“ aus, die auf das Ziel zeigt, das wir aktualisieren möchten, und gleichen das Feld „Datum“ aus der „Eingabe“ mit dem entsprechenden Feld „Datum“ in der „Ausgabe“ ab.
Dieses Setup bietet uns eine neue Option zum Ausführen des Flows als inkrementelle Aktualisierung. Toll!

Diese Methode behält alle Daten bei, die wir bereits in der Ausgabedatei haben. Es kann ein riesiger Extrakt mit Millionen von Zeilen sein – wir fügen ihm in diesem Verfahren nur neue Zeilen hinzu. Sobald Sie diese Flows erstellt haben, dauert es nur wenige Sekunden, um sie auszuführen und die Daten zu aktualisieren. Schließlich fragen wir die Supermetrics-API jetzt nur noch nach Daten von 10 Tagen ab.
Das ist es!
Die Verwendung der Supermetrics-API als Datenquelle in Ihrem Tableau Prep Builder hilft Ihnen bei der Durchführung komplexer Datenmodellierungsaufgaben, die normalerweise ein Data Warehouse erfordern.
Wenn Sie Ihre Tableau-Berichte optimieren möchten, buchen Sie eine Demo bei unserem Vertriebsteam oder starten Sie eine 14-tägige kostenlose Testversion der Supermetrics-API.