Google BigQuery
Verbindungstyp | Alteryx-Tool. Die aktuellste Version ist in der Alteryx Community verfügbar. |
Typ der Unterstützung | Lesen und Schreiben |
Validiert auf | ODBC-Clientversion 2.4.6.1015 |
Treiberdetails
Bevor eine Verbindung in den Alteryx Google BigQuery-Tools konfiguriert werden kann, sind möglicherweise Administratoraktion in Google Cloud erforderlich.
Google BigQuery erfordert OAuth als Authentifizierungsmethode. Wir unterstützen OAuth mit dem Simba ODBC-Treiber über DSN oder in Alteryx mit DCM.
Alteryx-Tools für die Verbindung
Wichtig
Die Google BigQuery-Tools sind veraltet. Sie können weiterhin das Eingabedaten-Tool sowie das Datenausgabe-Tool verwenden, um die Verbindung zu Google BigQuery herzustellen.
Standard-Workflow-Verarbeitung
In-DB-Workflow-Verarbeitung
Anmerkung
Wichtig
Projekte, Datasets und Tabellen mit Sonderzeichen (wie Bindestrichen) müssen in Anführungszeichen gesetzt werden. Weitere Informationen finden Sie im Artikel Google BigQuery-Fehler mit Bindestrichen in SQL-Abfragen in der Wissensdatenbank.
Die In-DB-Workflow-Verarbeitung wird nur mit DCM unterstützt.
Das für In-DB-Lese- und Schreibvorgänge verwendete Google BigQuery-Dataset muss identisch sein.
Konfigurieren einer Google BigQuery Bulk-Verbindung
Die Verwendung von Google BigQuery Bulk wird nur bei gleichzeitiger Verwendung von DCM unterstützt. So verwenden Sie die Bulk-Verbindung über das Ausgabedaten-Tool:
Aktivieren Sie den Data Connection Manager .
Wählen Sie Eine Verbindung einrichten und dann Datenquellen – Google BigQuery Bulk aus.
Wählen Sie Eine Datenquelle hinzufügen aus.
Geben Sie einen Datenquellennamen ein.
Geben Sie einen Katalog (Projekt) ein. Dies ist die Google BigQuery Projekt-ID, die sowohl das Dataset enthält, in das die Tabelle geschrieben wird, als auch den Google Cloud Storage-Bucket, der für das Staging verwendet wird.
Geben Sie ein Dataset ein. Hier wird die endgültige Tabelle geschrieben.
Geben Sie einen Bucket-Namen ein. Dies ist der Staging-Speicherort zum Bulk Loading in Google Cloud Storage. Der Bucket muss sich am selben Ort wie das Projekt befinden.
Wählen Sie Speichern aus.
Wählen Sie + Anmeldedaten verbinden aus. Dieselben Anmeldedaten werden für das Staging in Cloud Storage und für das Google BigQuery-Projekt verwendet.
Wählen Sie eine Authentifizierungsmethode aus,
und folgen Sie den Anweisungen zur Verwendung von OAuth mit DCM .
Wählen Sie Verbinden aus.
Geben Sie den Tabellennamen ein, und wählen Sie OK aus.
OAuth mit DCM
Sie können die Authentifizierung für Google BigQuery über OAuth mit Integration in DCM einrichten. Auf diese Weise müssen Sie Token nicht manuell in den ODBC-Treiber kopieren.
Voraussetzungen
Zum Einrichten von OAuth benötigen Sie:
einen gültigen DSN, bei dem die Option Authentifikator auf OAuth festgelegt wurde,
und dazu OAuth-Autoritäts-URL, Port, Client-ID sowie Client-Geheimnis vom Administrator.
Einrichtung der Authentifizierung
Ziehen Sie in Designer das Eingabe-Tool auf den Canvas.
Aktivieren Sie das Kontrollkästchen Data Connection Manager (DCM) verwenden .
Wählen Sie Eine Verbindung einrichten aus.
Gehen Sie im Fenster Datenverbindungen zu Datenquellen , und wählen Sie Google BigQuery-ODBC aus.
Das Fenster des Connection Manager wird geöffnet. Wählen Sie + Datenquellen hinzufügen aus.
Wählen Sie unter Technologie die Option Google BigQuery-ODBC mit Simba aus.
Geben Sie den Namen der Datenquelle ein, und wählen Sie den vorbereiteten Google BigQuery-DSN aus.
Wählen Sie Speichern aus.
Um die Anmeldedaten zu verknüpfen, wählen Sie + Anmeldedaten verbinden aus.
Wählen Sie OAuth als Authentifizierungsmethode aus.
Wählen Sie für die OAuth-Anwendung die Option Neue Anmeldedaten erstellen aus, und geben Sie die erforderlichen Informationen ein (OAuth-Autoritäts-URL, Port, Client-ID und Client-Geheimnis erhalten Sie vom Administrator).
Wählen Sie für OAuth-Token die Option Neue Anmeldedaten erstellen aus.
Geben Sie den Anmeldedaten-Namen ein, und wählen Sie Erstellen und Verknüpfen aus.
Wählen Sie Verbinden aus.
Melden Sie sich im externen Browserfenster des Google-Managers an.
Anmerkung
Aufgrund der Art und Weise, wie Token im DCM verwaltet werden, müssen Sie den OAuth-Autorisierungsprozess ggf. zweimal durchlaufen.
Bei Google BigQuery werden Tabellen immer in Anführungszeichen gesetzt.
Anhänge erfolgen nach Feldname. Wenn Name oder Datentyp nicht übereinstimmen, gibt Google BigQuery einen Fehler aus.
Aktivieren Sie die Option Nullwerte unterstützen in den formatspezifischen Optionen (standardmäßig aktiviert), um das Laden von Nulldaten in Google BigQuery zu ermöglichen. Wenn diese Option nicht aktiviert ist, werde Nullwerte von Google BigQuery abgelehnt.
Zusätzliche Spalten in der Zieltabelle werden als Null geladen, wenn sie nicht in Alteryx enthalten sind.
Ein Spaltenname darf nur Buchstaben (a–z, A–Z), Zahlen (0–9) oder Unterstriche (_) enthalten und muss mit einem Buchstaben oder Unterstrich beginnen. Die maximale Länge des Spaltennamens beträgt 300 Zeichen. Weitere Informationen finden Sie in Google BigQuery-Dokumentation .
Ausgabe-Konnektor-Schemata
Feldnamen und -typen, die an das Google BigQuery-Ausgabe-Tool übergeben werden, müssen mit denen in der Google BigQuery-Zieltabelle übereinstimmen. Spalten, die in der Google BigQuery-Tabelle, aber nicht in der Liste der Workflow-Felder vorhanden sind, erzeugen für diese Spalten in den eingefügten Datensätzen Nullwerte. Dies verursacht einen Fehler, wenn die Zielspalte nicht als „Nullwerte zulassend" (NULLABLE) konfiguriert ist.
Eingabe-Fortschrittsanzeige
Wenn sich für die ausgewählte Tabelle eines Eingabe-Tools ohne benutzerdefinierte Abfrage Zeilen im Streaming-Puffer befinden, verwendet das Eingabe-Tool die von Google gemeldete geschätzte Anzahl von Zeilen im Streaming-Puffer, während es den Prozentsatz der Fortschrittsanzeige in einem laufenden Workflow aktualisiert. Wenn die Schätzung von Google nicht korrekt ist, könnte auch der in der Fortschrittsanzeige angegebene Wert inkorrekt sein.
Falls die abgefragte Tabelle leer ist und der Streaming-Puffer für diese Tabelle nicht leer ist, kann Google die Anzahl der Zeilen im Streaming-Puffer auf 0 schätzen. Google kann jedoch weiterhin Zeilen aus dem Streaming-Puffer zurückgeben. In diesem Fall wird der Prozentsatz der Fortschrittsanzeige nicht aktualisiert und eine Warnung wird angezeigt.
Konfigurieren einer Verbindung mit den Google BigQuery-Tools
Wenden Sie sich an Ihren Google Cloud-Administrator, wenn Sie Hilfe mit Ihren Google BigQuery-Anmeldedaten benötigen.
Seit Designer-Version 22.1 wird eine OAuth-Authentifizierung mit dem Simba-ODBC-Treiber unterstützt.
Dienst-zu-Dienst-Authentifizierung einrichten
Sie können eine Dienstkonto-JSON-Schlüsseldatei von der Google Cloud Console erhalten oder einen neuen Schlüssel für ein bestehendes Dienstkonto erstellen. Weitere Informationen zu Google BigQuery finden Sie auf der Google BigQuery-Dokumentation -Website unter Dienstkontenschlüssel erstellen und verwalten .
Endbenutzer-Authentifizierung einrichten
Beschaffen Sie sich auf der Anmeldeseite von Google Cloud Console eine OAuth-Client-ID und ein Geheimnis. Stellen Sie sicher, dass der Client-Typ auf „Sonstige“ eingestellt ist.
Anmerkung
Verwenden Sie wann immer möglich die Dienst-zu-Dienst -Authentifizierung anstatt der Endbenutzer -Authentifizierung. Die Verwaltung unterschiedlicher Schlüssel für verschiedene Anwendungen, die sich für dasselbe Dienstkonto authentifizieren, ermöglicht den Widerruf des Zugriffs für eine spezifische Anwendung, ohne dass die anderen Anwendungen ihre Authentifizierungsdaten aktualisieren müssen.
Zugriffsberechtigungen
Zugriffsberechtigungen zum Lesen und Schreiben von Daten innerhalb eines Dienstkontos für ein Google BigQuery-Projekt müssen über die Google Cloud Console erteilt werden. Weitere Informationen zu Berechtigungen finden Sie auf der Google BigQuery-Dokumentation -Website.
Maximale verschachtelte, wiederholte Datensatztiefe
Verschachtelte, sich wiederholende Datensätze werden bis zu einer Tiefe von einer Ebene unterstützt. Verschachtelte, sich wiederholende Datensätze, die mehr als eine Ebene tief verschachtelt sind, werden nicht unterstützt. Weitere Informationen über verschachtelte, sich wiederholende Datensätze finden Sie auf der Google BigQuery-Dokumentation -Website.
Geodaten
Google BigQuery unterstützt das Schreiben von Geodaten nicht.
DATUM/UHRZEIT-Felder
Beim Schreiben in Google BigQuery:
Wenn ODBC zum Schreiben verwendet wird, erstellt Designer Datum/Uhrzeit-Felder als DATUM/UHRZEIT. Wenn der Bulk-Loader zum Schreiben verwendet wird, erstellt er Datum/Uhrzeit-Felder als ZEITSTEMPEL.
In Google BigQuery stellt ZEITSTEMPEL dasselbe wie DATUM/UHRZEIT dar und Sie können ihn mit EXTRAHIEREN parsen.
Verschachteltes, wiederholtes Datensatz-Flattening
Bei Eingabe
Wenn verschachtelte oder wiederholte Datensätze aus einer Google BigQuery-Tabelle abgerufen werden, vereinfacht der Alteryx-Workflow die verschachtelten und/oder wiederholten Datensätze gemäß dem untenstehenden Benennungsschema:
Ein verschachtelter Datensatz nested_attr der Spalte top_attr der obersten Ebene erstellt eine neue Spalte mit dem Namen nr_top_attr_nexted_attr .
Bei Ausgabe
Wenn Datensätze aus dem Alteryx-Workflow in eine vorhandene Google BigQuery-Tabelle übertragen werden, wird die Notwendigkeit spezifiziert, Datensatzfelder in verschachtelte und/oder sich wiederholende Datensätze zu falten, indem Datensatzfelder, die in den Ausgabe-Konnektor fließen, umbenannt werden, damit sie diesen Namenskonventionen entsprechen.
Ein Datensatz nested_attr , der in die Spalte top_attr der obersten Ebene verschachtelt werden soll, muss in nr_top_attr_nested_attr umbenannt werden.
Ein Datensatz nested_attr , der verschachtelt und beliebig oft unter der Spalte top_attr der obersten Ebene wiederholt werden soll, muss in nrr_top_attr_{repetition_index}_nested_attr umbenannt werden. Wiederholungen, die alle NULL -Werte in den verschachtelten Feldern enthalten, werden vor dem API-Aufruf zum Einfügen neuer Zeilen in die Google BigQuery-Tabelle gelöscht. Dies bedeutet, dass Datensätze in Ihrem Designer-Workflow eine beliebige Anzahl von maximalen Wiederholungen haben können und nicht jeder Datensatz dieselbe Anzahl von Wiederholungen haben muss.
AVRO-Beschränkung
Aufgrund einer AVRO-Beschränkung unterstützt der BigQuery Bulk-Loader keine BIGNUMERIC-Datentypen. Sie werden stattdessen als FLOAT behandelt.
Mit dem Google BigQuery Bulk-Loader kann Designer keine Felder als DATUM/UHRZEIT erstellen. In Designer Versionen vor 23.2 lädt der Bulk-Loader Datumsangaben als Zeichenfolge.