SQL-Workflow in Dataform erstellen und ausführen

In dieser Kurzanleitung werden Sie durch den folgenden Prozess in Dataform geführt, um einen SQL-Workflow zu erstellen und in BigQuery auszuführen:

Hinweise

  1. Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
  2. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  3. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  4. BigQuery and Dataform APIs aktivieren.

    Aktivieren Sie die APIs

  5. Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.

    Zur Projektauswahl

  6. Die Abrechnung für das Google Cloud-Projekt muss aktiviert sein.

  7. BigQuery and Dataform APIs aktivieren.

    Aktivieren Sie die APIs

Dataform unterstützt derzeit keine VPC Service Controls. Wenn Sie VPC Service Controls verwenden, schließen Sie BigQuery-Ressourcen aus Ihrem VPC Service Controls-Perimeter aus, um Dataform zu verwenden.

Erforderliche Rollen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen zu gewähren, um die Berechtigungen zu erhalten, die Sie zum Ausführen aller Aufgaben in dieser Anleitung benötigen:

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff verwalten.

Möglicherweise können Sie die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

Dataform-Repository erstellen

  1. Rufen Sie in der Google Cloud Console die Seite Dataform auf.

    Zu Dataform

  2. Klicken Sie auf Repository erstellen.

  3. Führen Sie auf der Seite Repository erstellen die folgenden Schritte aus:

    1. Geben Sie im Feld Repository-ID den Wert quickstart-repository ein.

    2. Wählen Sie in der Liste Region europe-west4 aus.

    3. Klicken Sie auf Erstellen.

Entwicklungsarbeitsbereich für Dataform erstellen und initialisieren

  1. Rufen Sie in der Google Cloud Console die Seite Dataform auf.

    Zu Dataform

  2. Klicken Sie auf quickstart-repository.

  3. Klicken Sie auf Entwicklungsarbeitsbereich erstellen.

  4. Führen Sie im Fenster Entwicklungsarbeitsbereich erstellen die folgenden Schritte aus:

    1. Geben Sie im Feld Workspace-ID den Wert quickstart-workspace ein.

    2. Klicken Sie auf Erstellen.

    Die Seite mit dem Entwicklungsarbeitsbereich wird angezeigt.

  5. Klicken Sie auf Arbeitsbereich initialisieren.

Ansicht erstellen

In den folgenden Abschnitten definieren Sie eine Ansicht, die Sie später als Datenquelle für eine Tabelle verwenden.

SQLX-Datei zur Definition einer Ansicht erstellen

  1. Klicken Sie im Bereich Files (Dateien) neben definitions/ auf das -Menü More (Mehr).

  2. Klicken Sie auf Datei erstellen.

  3. Führen Sie im Bereich Neue Datei erstellen die folgenden Schritte aus:

    1. Geben Sie im Feld Dateipfad hinzufügen definitions/quickstart-source.sqlx ein.

    2. Klicken Sie auf Datei erstellen.

Ansicht definieren

  1. Maximieren Sie im Bereich Dateien den Ordner mit den Definitionen.

  2. Klicken Sie auf definitions/quickstart-source.sqlx.

  3. Geben Sie in die Datei das folgende Code-Snippet ein:

    config {
      type: "view"
    }
    
    SELECT
      "apples" AS fruit,
      2 AS count
    UNION ALL
    SELECT
      "oranges" AS fruit,
      5 AS count
    UNION ALL
    SELECT
      "pears" AS fruit,
      1 AS count
    UNION ALL
    SELECT
      "bananas" AS fruit,
      0 AS count
    

Tabelle erstellen

In den folgenden Abschnitten definieren Sie den Tabellentyp in einer SQLX-Datei und schreiben dann eine SELECT-Anweisung, um die Tabellenstruktur innerhalb derselben Datei zu definieren.

SQLX-Datei für Tabellendefinition erstellen

  1. Klicken Sie im Bereich Files (Dateien) neben definitions/ auf das -Menü More (Mehr) und wählen Sie Create file (Datei erstellen) aus.

  2. Geben Sie im Feld Dateipfad hinzufügen den Wert definitions/quickstart-table.sqlx ein.

  3. Klicken Sie auf Datei erstellen.

Tabellentyp, -struktur und -abhängigkeiten definieren

  1. Maximieren Sie im Bereich Files (Dateien) das Verzeichnis definitions/.

  2. Wählen Sie quickstart-table.sqlx aus und geben Sie den folgenden Tabellentyp und die folgende SELECT-Anweisung ein:

    config {
      type: "table"
    }
    
    SELECT
      fruit,
      SUM(count) as count
    FROM ${ref("quickstart-source")}
    GROUP BY 1
    

Nach der Definition des Tabellentyps gibt Dataform einen Fehler bei der Abfragevalidierung aus, da quickstart-source in BigQuery noch nicht vorhanden ist. Dieser Fehler wird behoben, wenn Sie den SQL-Workflow weiter unten in dieser Anleitung ausführen.

Dataform Zugriff auf BigQuery gewähren

Zum Ausführen von Workflows in BigQuery muss das Dataform-Dienstkonto die folgenden erforderlichen Rollen haben:

  • BigQuery Data Editor für Projekte, für die Dataform Lese- und Schreibzugriff benötigt. Dazu gehört in der Regel das Projekt, das Ihr Dataform-Repository hostet.
  • BigQuery Data Viewer für Projekte, auf die Dataform Lesezugriff benötigt.
  • BigQuery Job User in dem Projekt, das Ihr Dataform-Repository hostet.

So weisen Sie diese Rollen zu:

  1. Öffnen Sie in der Google Cloud Console die Seite IAM.

    Zur Seite „IAM“

  2. Klicken Sie auf Hinzufügen.

  3. Geben Sie im Feld Neue Hauptkonten die ID Ihres Dataform-Dienstkontos ein.

  4. Wählen Sie in der Drop-down-Liste Rolle auswählen die Rolle BigQuery-Jobnutzer aus.

  5. Klicken Sie auf Weitere Rolle hinzufügen und wählen Sie in der Drop-down-Liste Rolle auswählen die Rolle BigQuery-Dateneditor aus.

  6. Klicken Sie auf Weitere Rolle hinzufügen und wählen Sie in der Drop-down-Liste Rolle auswählen die Rolle BigQuery-Datenbetrachter aus.

  7. Klicken Sie auf Speichern.

Workflow ausführen

  1. Rufen Sie in der Google Cloud Console die Seite Dataform auf.

    Zu Dataform

  2. Klicken Sie auf der Seite quickstart-workspace auf Ausführung starten.

  3. Klicken Sie auf Alle Aktionen.

  4. Klicken Sie im Bereich Ausführen auf Ausführung starten.

    Dataform verwendet die Standard-Repository-Einstellungen, um die Inhalte Ihres Workflows in einem BigQuery-Dataset namens dataform zu erstellen.

Ausführungslogs in Dataform aufrufen

  1. Klicken Sie auf der Seite quickstart-repository auf Workflow-Ausführungslogs.

  2. Klicken Sie auf die letzte Ausführung, um deren Details aufzurufen.

Bereinigen

Mit den folgenden Schritten vermeiden Sie, dass Ihrem Google Cloud-Konto die auf dieser Seite verwendeten Ressourcen in Rechnung gestellt werden.

In BigQuery erstelltes Dataset löschen

Löschen Sie das Dataset dataform, damit keine Gebühren für BigQuery-Assets anfallen.

  1. Öffnen Sie in der Google Cloud Console die Seite BigQuery.

    BigQuery aufrufen

  2. Maximieren Sie im Bereich Explorer Ihr Projekt und wählen Sie dataform aus.

  3. Klicken Sie auf das Menü Aktionen und wählen Sie Löschen aus.

  4. Geben Sie im Dialogfeld Dataset löschen in das Textfeld delete ein und klicken Sie auf Löschen.

Entwicklungsarbeitsbereich für Dataform löschen

Für das Erstellen von Entwicklungsarbeitsbereichen für Dataform fallen keine Kosten an. Wenn Sie aber dennoch den Entwicklungsarbeitsbereich löschen möchten, gehen Sie so vor:

  1. Rufen Sie in der Google Cloud Console die Seite Dataform auf.

    Zu Dataform

  2. Klicken Sie auf quickstart-repository.

  3. Klicken Sie auf dem Tab Entwicklungsbereiche auf das -Menü Mehr nach quickstart-workspace und wählen Sie dann Löschen aus.

  4. Klicken Sie zur Bestätigung auf Löschen.

Dataform-Repository löschen

Für das Erstellen von Dataform-Repositories fallen keine Kosten an. Wenn Sie jedoch ein Repository und seinen gesamten Inhalt löschen möchten, gehen Sie so vor:

  1. Rufen Sie in der Google Cloud Console die Seite Dataform auf.

    Zu Dataform

  2. Klicken Sie neben quickstart-repository auf das -Menü Mehr und wählen Sie dann Löschen aus.

  3. Geben Sie im Fenster Repository löschen den Namen des Repositorys ein, um den Löschvorgang zu bestätigen.

  4. Klicken Sie zur Bestätigung auf Löschen.

Nächste Schritte