In diesem Dokument erfahren Sie, wie Sie Überschreibungen für die Arbeitsbereichskompilierung erstellen, um Tabellen und Ansichten zu isolieren, die in Ihren Dataform-Arbeitsbereichen in BigQuery erstellt wurden. Mit Überschreibungen der Arbeitsbereichskompilierung können Sie isolierte Dataform-Entwicklungsumgebungen erstellen.
Überschreibungen von Arbeitsbereichskompilierungen
Wenn Sie SQL-Workflow-Code in einem Dataform-Arbeitsbereich entwickeln, kompiliert Dataform den Code in Ihrem Arbeitsbereich in Echtzeit, um ein Kompilierungsergebnis des Arbeitsbereichs zu erstellen. Dataform verwendet die in der Workflow-Konfigurationsdatei definierten Einstellungen, um das Ergebnis der Arbeitsbereichskompilierung zu erstellen. Wenn Sie dann die Ausführung in einem Arbeitsbereich auslösen, führt Dataform das Ergebnis der Arbeitsbereichskompilierung in BigQuery aus.
Wenn Sie die in den Workflow-Einstellungen festgelegten Standardeinstellungen für alle Arbeitsbereiche in Ihrem Repository überschreiben möchten, können Sie Arbeitsbereichskompilierungsüberschreibungen erstellen.
Mit Überschreibungen von Arbeitsbereichskompilierungen können Sie die folgenden Einstellungen für alle Arbeitsbereiche in Ihrem Repository überschreiben:
- Projekt
- Google Cloud -Projekt, in dem Dataform das Kompilierungsergebnis des Arbeitsbereichs ausführt, in
workflow_settings.yaml
alsdefaultProject
oder indataform.json
alsdefaultDatabase
festgelegt - Tabellenpräfix
- Benutzerdefiniertes Präfix, das allen Tabellennamen in allen Arbeitsbereichen im Repository hinzugefügt wird.
- Schemasuffix
Benutzerdefiniertes Suffix, das an das Schema der in
Legen Sie den Wert als
defaultDataset
inworkflow_settings.yaml
,defaultSchema
indataform.json
oder im Parameterschema
imconfig
-Block einer Tabelle fest.
Wenn Sie isolierte Entwicklungsumgebungen erstellen möchten, können Sie Arbeitsbereiche mit individuellen Überschreibungen für die Kompilierung isolieren. Sie können die Kompilierungsüberschreibungen für Tabellenpräfix und Schemasuffix mit der Variablen ${workspaceName}
dynamisch ändern.
Wenn Sie die Ausführung in einem Arbeitsbereich manuell auslösen, wird über die Variable ${workspaceName}
der Name des Arbeitsbereichs in die Überschreibungen der Arbeitsbereichskompilierung eingefügt.
Wenn Sie ${workspaceName}
als Tabellenpräfix festlegen, fügt Dataform den Namen des Arbeitsbereichs den Namen aller Tabellen im Arbeitsbereich hinzu. Nach der Ausführung können Sie in BigQuery ermitteln, aus welchem Arbeitsbereich eine Tabelle stammt.
Wenn Sie ${workspaceName}
als Schemasuffix festlegen, hängt Dataform den Namen des Arbeitsbereichs an defaultSchema
an und erstellt ein benutzerdefiniertes Schema, das dem Arbeitsbereich zugewiesen ist. Nach der Ausführung können Sie in BigQuery alle Tabellen finden, die aus einem bestimmten Arbeitsbereich im entsprechenden Schema ausgeführt wurden.
Beispiel für dynamische Überschreibungen von Arbeitsbereichskompilierungen
Im folgenden Beispiel werden dynamische Workspace-Überschreibungen für die Kompilierung auf ein Repository angewendet, das Arbeitsbereiche enthält, die nach Entwicklern benannt sind, die am Repository arbeiten: Sasha
und Kai
.
Das Ziel der Überschreibungen von Arbeitsbereichskompilierungen in diesem Beispiel besteht darin, isolierte Entwicklungsumgebungen für Sasha und Kai zu erstellen.
In workflow_settings.yaml
sind die folgenden Standardeinstellungen festgelegt:
defaultProject
:analytics
defaultDataset
:dataform
Mit den folgenden Arbeitsbereichskompilierungsüberschreibungen werden für jeden Arbeitsbereich im Repository ein dynamisches Tabellenpräfix und ein Schemasuffix erstellt:
- Google Cloud Projekt-ID :
analytics_dev
- Tabellenpräfix:
${workspaceName}
- Schema suffix:
${workspaceName}
Wenn Sasha die Ausführung im Arbeitsbereich Sasha
manuell auslöst, führt Dataform den Inhalt mit den folgenden Einstellungen aus:
- Google Cloud project:
analytics_dev
- Schema:
dataform_sasha
- Tabellennamen:
sasha_name
, z. B.sasha_orders
.
Wenn Kai die Ausführung im Arbeitsbereich Kai
manuell auslöst, führt Dataform den Inhalt mit den folgenden Einstellungen aus:
- Google Cloud project:
analytics_dev
- Schema:
dataform_kai
- Tabellennamen:
kai_name
, z. B.kai_orders
Hinweise
Öffnen Sie in der Google Cloud Console die Seite Dataform.
Wählen Sie ein Repository aus oder erstellen Sie ein neues.
Optional: Wenn Sie das Standard Google Cloud projekt überschreiben möchten, gewähren Sie Ihrem Dataform-Dienstkonto Zugriff auf das Google Cloud Projekt, das Sie verwenden möchten.
Erforderliche Rollen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Dataform Admin (roles/dataform.admin
) für Repositories zuzuweisen, um die Berechtigungen zu erhalten, die Sie zum Erstellen von Workspace-Überschreibungen benötigen.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.
Kompilierungsüberschreibungen für Arbeitsbereiche erstellen
So erstellen Sie Überschreibungen für die Kompilierung von Dataform-Arbeitsbereichen:
- Rufen Sie in Ihrem Repository die Einstellungen auf.
- Klicken Sie auf Bearbeiten.
- Geben Sie im Bereich Überschreibungen von Arbeitsbereichskompilierungen im Feld Google Cloud Projekt-ID die ID des Projekts ein. Google Cloud
- Geben Sie im Feld Tabellenpräfix ein Präfix für alle Tabellennamen ein.
- Optional: Wenn Sie ein dynamisches Tabellenpräfix erstellen möchten, das für jeden Arbeitsbereich eindeutig ist, geben Sie
${workspaceName}
als Tabellenpräfix ein.
- Optional: Wenn Sie ein dynamisches Tabellenpräfix erstellen möchten, das für jeden Arbeitsbereich eindeutig ist, geben Sie
- Geben Sie in das Feld Schemasuffix ein Suffix ein, das an das Schema der erstellten Tabelle oder Ansicht angehängt werden soll.
- Optional: Wenn Sie ein dynamisches Schemasuffix erstellen möchten, das für jeden Arbeitsbereich eindeutig ist, geben Sie
${workspaceName}
als Tabellensuffix ein.
- Optional: Wenn Sie ein dynamisches Schemasuffix erstellen möchten, das für jeden Arbeitsbereich eindeutig ist, geben Sie
- Klicken Sie auf Speichern.
Dataform wendet Überschreibungen von Arbeitsbereichskompilierungen auf alle Arbeitsbereiche in Ihrem Repository an.
Überschreibungen von Arbeitsbereichskompilierungen bearbeiten
So bearbeiten Sie Überschreibungen der Dataform-Arbeitsbereichskompilierung:
- Rufen Sie in Ihrem Repository die Einstellungen auf.
- Klicken Sie auf Bearbeiten.
- Bearbeiten Sie die Überschreibungen für die Arbeitsbereichskompilierung und klicken Sie dann auf Speichern.
Überschreibungen von Arbeitsbereichskompilierungen löschen
So löschen Sie Überschreibungen der Dataform-Arbeitsbereichskompilierung:
- Rufen Sie in Ihrem Repository die Einstellungen auf.
- Klicken Sie auf Bearbeiten.
- Klicken Sie im Bereich Überschreibungen von Arbeitsbereichskompilierungen auf Alle löschen und dann auf Speichern.
Nächste Schritte
- Informationen zum manuellen Auslösen der Ausführung finden Sie unter Ausführung auslösen.