In diesem Dokument wird die Architektur und Ausführung von SQL-Workflows in Dataform erläutert.
Mit Dataform können Sie SQL-Workflows entwickeln, testen und einer Versionsverwaltung unterziehen, die Sie in BigQuery ausführen können, um Daten für Analysezwecke zu transformieren. Sie können SQL-Workflows mit dem Dataform-Core entwickeln, indem Sie SQLX-Dateien und optional JavaScript-Dateien verwenden, oder mit JavaScript.
Ein SQL-Workflow kann aus den folgenden Objekten bestehen:
- Deklarationen von Datenquellen
- Deklarationen von BigQuery-Datenquellen, mit denen Sie in Dataform-Tabellendefinitionen und SQL-Vorgängen auf diese Datenquellen verweisen können.
- Tables
- Tabellen, die Sie in Dataform basierend auf den deklarierten Datenquellen oder anderen Tabellen in Ihrem SQL-Workflow erstellen. Dataform unterstützt die folgenden Tabellentypen: Tabelle, inkrementelle Tabelle, Ansicht und materialisierte Ansicht.
- Zusicherungen
- Abfragen für Datenqualitätstests, mit denen Sie Tabellendaten validieren können. Dataform führt Assertionen jedes Mal aus, wenn der SQL-Workflow aktualisiert wird, und benachrichtigt Sie, wenn Assertionen fehlschlagen.
- Benutzerdefinierte SQL-Vorgänge
- SQL-Anweisungen, die von Dataform unverändert in BigQuery ausgeführt werden.
- Umfasst
- JavaScript-Dateien mit Definitionen von Variablen und Funktionen, die Sie in Ihrem SQL-Workflow wiederverwenden können.
Visualisierung eines SQL-Workflows
Ihr SQL-Workflow wird als gerichteter azyklischer Graph (Directed Acyclic Graph, DAG) visualisiert. Im DAG werden alle Objekte des SQL-Workflows angezeigt, die in Ihrem Arbeitsbereich definiert sind, sowie die Beziehungen zwischen ihnen. Sie können heran- und herauszoomen und den DAG per Drag-and-Drop verschieben. Wenn Ihr SQL-Workflow Kompilierungsfehler enthält, wird in Dataform anstelle des DAG eine Fehlermeldung angezeigt.
Wenn Sie den DAG Ihres SQL-Workflows aufrufen möchten, klicken Sie in Ihrem Arbeitsbereich auf Kompilierte Grafik.
Ausführung eines SQL-Workflows
In Ihrem Entwicklungsarbeitsbereich können Sie die Ausführung Ihres gesamten SQL-Workflows, einer Auswahl von Aktionen oder einer Auswahl von Tags manuell auslösen.
Sie können Ausführungen mit Dataform-Releasekonfigurationen und Workflowkonfigurationen planen. Erstellen Sie zuerst eine Release-Konfiguration, um Kompilierungsergebnisse Ihres Repositorys zu erstellen. Erstellen Sie dann eine Workflowkonfiguration, wählen Sie eine Release-Konfiguration und SQL-Workflowaktionen aus, die ausgeführt werden sollen, und legen Sie den Ausführungszeitplan fest.
Alternativ können Sie Ausführungen entweder mit Cloud Composer oder mit Workflows und Cloud Scheduler planen.
Während der Ausführung führt Dataform SQL-Abfragen in BigQuery aus. Dabei wird die Reihenfolge der Objektabhängigkeiten in Ihrem SQL-Workflow berücksichtigt. Nach der Ausführung können Sie die definierten Tabellen und Ansichten für alle Ihre Analyseaufgaben in BigQuery verwenden.
Optionen für die Ausführungskonfiguration
Wenn Sie eine bestimmte Gruppe von SQL-Workflowobjekten ausführen möchten, können Sie den ausgewählten Dateien Dataform-Ausführungstags hinzufügen. Anschließend können Sie nur die Dateien mit einem ausgewählten Tag ausführen, wenn Sie die Ausführung manuell auslösen.
Standardmäßig wird Ihr SQL-Workflow in Dataform mit den Ausführungseinstellungen ausgeführt, die in der Datei dataform.json
definiert sind.
Sie können diese Ausführungseinstellungen mit Kompilierungsüberschreibungen überschreiben.
Mit Überschreibungen von Arbeitsbereichskompilierungen können Sie Arbeitsbereiche in isolierte Ausführungsumgebungen umwandeln. Wenn Sie die Ausführung in einem Arbeitsbereich manuell auslösen, führt Dataform die Ausgabe an einem isolierten Speicherort in BigQuery aus.
Wenn Sie ein einzelnes Kompilierungsergebnis mit Überschreibungen für die Kompilierung erstellen und ausführen möchten, können Sie Anfragen mit der Dataform API übergeben.
Mit Release-Konfigurationen können Sie Kompilierungsüberschreibungen für Ihr gesamtes Repository sowie die Häufigkeit der Erstellung von Kompilierungsergebnissen mit den angewendeten Einstellungen konfigurieren.
Weitere Informationen zum Konfigurieren der Kompilierung und des Codelebenszyklus in Dataform finden Sie unter Einführung in den Codelebenszyklus in Dataform.
Nächste Schritte
- Informationen zum Deklarieren einer Datenquelle finden Sie unter Datenquelle deklarieren.
- Informationen zum Deklarieren von Abhängigkeiten zum Definieren von Beziehungen zwischen Objekten in Ihrem SQL-Workflow finden Sie unter Abhängigkeiten festlegen.
- Informationen zum Definieren benutzerdefinierter SQL-Vorgänge finden Sie unter Benutzerdefinierte SQL-Vorgänge hinzufügen.
- Informationen zum Wiederverwenden von Variablen und Funktionen in Ihrem SQL-Workflow mit Includes finden Sie unter Code in einem einzelnen Repository mit Includes wiederverwenden.