Dataform – Übersicht

In diesem Dokument werden Dataform-Konzepte und -Prozesse vorgestellt.

Dataform ist ein Dienst für Datenanalysten, mit dem komplexe SQL-Workflows für die Datentransformation in BigQuery entwickelt, getestet, gesteuert und geplant werden können.

Mit Dataform können Sie die Datentransformation im ELT-Prozess (Extraktion, Laden und Transformation) für die Datenintegration verwalten. Nachdem Rohdaten aus Quellsystemen extrahiert und in BigQuery geladen wurden, können Sie sie mit Dataform in eine klar definierte, getestete und dokumentierte Suite von Datentabellen umwandeln.

Mit Dataform können Sie die folgenden Datentransformationsaktionen ausführen:

  • Entwickeln und Ausführen von SQL-Workflows für die Datentransformation.
  • Arbeiten Sie mit Teammitgliedern bei der Entwicklung von SQL-Workflows über Git zusammen.
  • Eine große Anzahl von Tabellen und deren Abhängigkeiten verwalten
  • Quelldaten deklarieren und Tabellenabhängigkeiten verwalten
  • Sehen Sie sich eine Visualisierung der Abhängigkeitsstruktur Ihres SQL-Workflows an.
  • Daten mit SQL-Code in einem zentralen Repository verwalten
  • Code mit JavaScript wiederverwenden
  • Überprüfen Sie die Datenrichtigkeit durch Qualitätstests an Quell- und Ausgabetabellen.
  • SQL-Code zur Versionsverwaltung
  • Dokumentieren Sie Datentabellen in SQL-Code.

Dataform unterstützt derzeit keine vom Kunden verwalteten Verschlüsselungsschlüssel (CMEK) und VPC Service Controls. Wenn Sie Dataform verwenden möchten, müssen Sie BigQuery-Ressourcen aus Ihrem VPC Service Controls-Perimeter ausschließen. Alternativ können Sie SQL-Workflows lokal mit der Dataform CLI entwickeln.

Datentransformationsprozesse in Dataform

Der Datentransformationsworkflow für Dataform sieht so aus:

  1. Mit Dataform können Sie Repositories erstellen, um Ihren Code zu verwalten.
  2. Mit Dataform können Sie Arbeitsbereiche für die Entwicklung erstellen.
  3. Mit Dataform können Sie SQL-Workflows in einem Entwicklungsarbeitsbereich entwickeln.
  4. Dataform kompiliert Dataform Core in SQL.
  5. Dataform führt die Abhängigkeitsstruktur aus.

Mit Dataform können Sie Repositories erstellen, um Ihren Code zu verwalten

In einem Dataform-Repository verwenden Sie Dataform Core, eine Erweiterung von SQL, um SQLX-Dateien zu schreiben, in denen Sie Ihren Workflow definieren. Dataform-Repositories unterstützen die Versionsverwaltung. Sie können ein Dataform-Repository mit einem Drittanbieter-Git-Anbieter verknüpfen.

Mit Dataform können Sie Arbeitsbereiche für die Entwicklung erstellen

Sie können in einem Dataform-Repository Entwicklungsarbeitsbereiche für die Dataform-Kernentwicklung erstellen. In einem Entwicklungsarbeitsbereich können Sie Änderungen am Repository vornehmen, sie kompilieren, testen und über Git in das Haupt-Repository übertragen.

Mit Dataform können Sie Dataform Core in einem Entwicklungsarbeitsbereich entwickeln

In einem Entwicklungsarbeitsbereich können Sie Tabellen, deren Abhängigkeiten und Transformationslogik definieren und dokumentieren, um Ihren SQL-Workflow zu erstellen. Sie können auch Aktionen in JavaScript konfigurieren.

Dataform kompiliert den Dataform-Kern

Während der Kompilierung führt Dataform die folgenden Aufgaben aus:

  • Kompiliert den Dataform Core in einen SQL-Workflow von Standard-SQL.
  • Fügt dem Code entsprechend Ihrer Abfragekonfiguration Boilerplate-SQL-Anweisungen wie CREATE TABLE oder INSERT hinzu.
  • Transpiliert (und kompiliert Quell-zu-Quell-) JavaScript in SQL.
  • Behebt Abhängigkeiten und prüft auf Fehler, einschließlich fehlender oder zirkulärer Abhängigkeiten.
  • Erstellt die Abhängigkeitsstruktur aller Aktionen, die in BigQuery ausgeführt werden sollen.

Für die Fehlerbehebung in Echtzeit können Sie sich den kompilierten SQL-Workflow Ihres Projekts in einer interaktiven Grafik in Ihrem Entwicklungsarbeitsbereich ansehen.

Dataform kompiliert den Code in einer V8-Sandbox-Umgebung ohne Internetzugang. Während der Kompilierung sind keine weiteren Aktionen wie das Aufrufen externer APIs verfügbar.

Dataform führt die Abhängigkeitsstruktur aus

In BigQuery führt Dataform die folgenden Aufgaben aus:

  • Führt SQL-Befehle in der Reihenfolge der Abhängigkeitsstruktur aus.
  • Führt Assertion-Abfragen für Ihre Tabellen und Ansichten aus, um die Datenrichtigkeit zu prüfen
  • Führt andere von Ihnen definierte SQL-Vorgänge aus.

Nach der Ausführung können Sie die Tabellen und Ansichten für alle Analysezwecke verwenden.

Sie können Logs ansehen, um zu sehen, welche Tabellen erstellt wurden, ob Assertions bestanden wurden oder fehlgeschlagen sind, wie lange jede Aktion gedauert hat und weitere Informationen. Sie können sich auch den genauen SQL-Code ansehen, der in BigQuery ausgeführt wurde.

Dataform-Modellierungsframework

Dataform bietet ein Open-Source-Datenmodellierungs-Framework, das aus Dataform Core und der Dataform CLI besteht und außerhalb von Google Cloud verwendet werden kann.

Nächste Schritte