SQL-Workflow in Dataform erstellen und ausführen

Diese Kurzanleitung führt Sie durch den folgenden Prozess in Dataform 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. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

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

  4. BigQuery and Dataform APIs aktivieren.

    Aktivieren Sie die APIs

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

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

  7. BigQuery and Dataform APIs aktivieren.

    Aktivieren Sie die APIs

Erforderliche Rollen

Um die Berechtigungen zu erhalten, die Sie zum Ausführen aller Aufgaben in dieser Anleitung benötigen, bitten Sie Ihren Administrator, Ihnen folgende IAM-Rollen für Ihr Projekt:

  • Dataform Admin (roles/dataform.admin) – Repositories
  • Dataform Editor (roles/dataform.editor) – Arbeitsbereiche und Workflowaufrufe

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

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

Dataform-Repository erstellen

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

    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. Öffnen Sie in der Google Cloud Console die Seite Dataform.

    Zu Dataform

  2. Klicken Sie auf quickstart-repository.

  3. Klicken Sie auf . Entwicklung erstellen. Arbeitsbereich.

  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 „Entwicklungsarbeitsbereich“ wird angezeigt.

  5. Klicken Sie auf Arbeitsbereich initialisieren.

Ansicht erstellen

In den folgenden Abschnitten definieren Sie eine Ansicht, die Sie später als Daten- Quelle für eine Tabelle.

SQLX-Datei zur Definition einer Ansicht erstellen

  1. Klicken Sie im Bereich Dateien neben definitions/ auf das Symbol Mehr aus.

  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
    
  4. Klicken Sie auf Format.

Tabelle erstellen

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

SQLX-Datei für Tabellendefinition erstellen

  1. Klicken Sie im Bereich Dateien neben definitions/ auf das Symbol Mehr und wählen Sie dann 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. Erweitern Sie im Bereich Dateien das Verzeichnis definitions/.

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

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

Nachdem der Tabellentyp definiert wurde, gibt Dataform einen Abfragevalidierungsfehler aus da quickstart-source noch nicht in BigQuery vorhanden ist. Dieses wird behoben, wenn Sie den SQL-Workflow später in dieser Anleitung ausführen.

Dataform Zugriff auf BigQuery gewähren

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

  • BigQuery-Dateneditor für Projekte, auf die Dataform Lese- und Schreibzugriff benötigt. Sie enthalten in der Regel das Projekt, das Ihr Dataform-Repository hostet.
  • BigQuery-Datenbetrachter für Projekte, auf die Dataform Lesezugriff benötigt.
  • BigQuery-Jobnutzer für das Projekt, das Ihr Dataform-Repository hostet.

So weisen Sie diese Rollen zu:

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

    Zur IAM-Seite

  2. Klicken Sie auf Hinzufügen.

  3. Geben Sie im Feld Neue Hauptkonten Ihren Dataform-Dienst ein Konto-ID.

  4. Wähle in der Drop-down-Liste Rolle auswählen die gewünschte Rolle aus. BigQuery-Jobnutzer.

  5. Klicken Sie auf Weitere Rolle hinzufügen und dann im Drop-down-Menü Rolle auswählen auf die Rolle BigQuery-Dateneditor aus.

  6. Klicken Sie auf Weitere Rolle hinzufügen und dann im Drop-down-Menü Rolle auswählen auf die Rolle BigQuery-Datenbetrachter.

  7. Klicken Sie auf Speichern.

Workflow ausführen

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

    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 in einem BigQuery-Dataset namens dataform

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 in dieser Anleitung verwendeten Ressourcen in Rechnung gestellt werden:

In BigQuery erstelltes Dataset löschen

Um zu vermeiden, dass Gebühren für BigQuery-Assets anfallen, löschen Sie die Dataset mit dem Namen dataform.

  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.

  4. Geben Sie im Dialogfeld Dataset löschen den Wert delete in das Feld ein. Klicken Sie auf Löschen.

Entwicklungsarbeitsbereich für Dataform löschen

Beim Erstellen des Dataform-Entwicklungsarbeitsbereichs fallen keine Kosten an, aber das Löschen des Entwicklungsarbeitsbereichs können Sie die folgenden Schritte ausführen:

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

    Zu Dataform

  2. Klicken Sie auf quickstart-repository.

  3. Klicken Sie auf dem Tab Entwicklungsarbeitsbereiche auf . 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

Beim Erstellen eines Dataform-Repositorys fallen keine Kosten an. können Sie diese Schritte ausführen:

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

    Zu Dataform

  2. Klicken Sie bis zum 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 das Löschen zu bestätigen.

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

Nächste Schritte