Business Intelligence/10. Juni 2024 -Aktualisiert am 18. Juni 2024/3 Min. Lesezeit

Dataform: Effizientes Datenmanagement in Google BigQuery - Aufbau und Ausführung


In einem vorherigen Blogpost wurden die Vorteile von Dataform beschrieben. Jetzt folgt ein tieferer Einblick in den Aufbau und die Ausführung von Dataform-Projekten.

Wie aktiviert man Dataform in Google BigQuery?

  1. Projekterstellung: Erstellung eines neuen Dataform-Projekt oder Nutzung eines vorhandenen Projektes
  2. Öffnen der Google Cloud Console: Navigieren zur Seite "Dataform" (entweder über BigQuery oder direkt hier).
  3. Repository erstellen: Benennen des Repositories, z.B. 'Projektname-dataform' und Auswahl der entsprechenden Region.
  4. Entwicklungsbereiche erstellen: Benennung der Workspace-ID, z.B. 'Projektname-workspace'.
  5. Arbeitsbereich initialisieren: Sicherstellen, dass der Service-Account die erforderlichen Rechte besitzt: 'dataform.admin' und 'dataform.editor'.

Ordnerstruktur

Die Ordnerstruktur besteht aus folgenden Elementen:

definitions: Dieser Ordner enthält Datenmodell-Definitionen wie Tabellen, Views, Materialized Views usw. Die Dateien in diesem Ordner können von anderen Dataform-Modellen referenziert werden, um gemeinsam genutzte Definitionen bereitzustellen und Wiederholungen von DDL-Code zu vermeiden.

includes: Hier können wiederverwendbare Funktionen (z.B. Variablenbeschreibungen) gespeichert werden. Diese können anschließend in anderen Dataform-Dateien referenziert werden, um Duplikation von Code zu vermeiden und eine bessere Wartbarkeit und Lesbarkeit des Codes zu erreichen.

dataform.json: Diese Datei enthält Dataform-Projektdefinitionen, -Konfigurationen und -Metadaten im JSON-Format. Sie steuert die Verarbeitung von SQL-Code in Dataform und unterstützt die Wiederholung von Arbeitsabläufen. In dieser Datei sind Informationen zur Projektorganisation, SQL-Ausführung, Code-Überprüfung und intelligenten Codegenerierung enthalten.

package.json: Diese Datei enthält technische Informationen über das Dataform-Projekt, einschließlich Versionsnummern, Abhängigkeiten und anderen Einstellungen.

Erste View in Dataform erstellen

Um eine neue View zu erstellen, klickt man im Ordner 'definitions' auf die drei Punkte und erstellt eine SQLX-Datei. Dataform verwendet die Open-Source-SQL-Erweiterung SQLX, die die Entwicklung schneller, skalierbarer und zuverlässiger macht. SQLX ermöglicht Funktionen wie Datendokumentation, automatische Qualitätsprüfungen und Abhängigkeitsmanagement.
Hier ein Beispiel:

1config {
2	type: "view",
3	description: "my first dataform table", 
4    columns: {	
5      column1: 'Description of column 1',	
6      column2: 'Description of column 27    }
8}
9
10SELECT column1, column2 FROM ${ref(table)}

Um bereits definierte Tabellen und Views zu referenzieren, kann die Funktion '${ref()}' verwendet werden.

Ausführung von Aufträgen in Dataform

Aufträge in Dataform können sowohl manuell als auch automatisch über "Ausführen starten" ausgeführt werden. Bei der manuellen Ausführung kann das gesamte Projekt, eine Tag-Auswahl oder eine Auswahl von Aktionen ausgeführt werden. Vor dem Ausführen sollten die gewünschten Einstellungen in der dataform.js überprüft werden.


Weitere Informationen

Für detailliertere Anleitungen und Informationen sind die folgenden Links hilfreich: