- BigQuery, Google Cloud Platform
- Big Query, Google Cloud
- 4 Min Lesezeit
Tobias Vogler
BigQuery Data Canvas (BQDC) ist ein von Gemini AI unterstützter Service der Google Cloud Platform (GCP), welcher das Auffinden, Erkunden und Analysieren von Daten innerhalb von Google BigQuery, dem zentralen Analytics-Service der GCP, intuitiver gestalten soll. Was sich genau hinter BQDC verbirgt und für welche Use-Cases dadurch ein Mehrwert generiert werden kann, erfahren Sie in diesem Artikel.
Inhaltsverzeichnis
Was genau ist BigQuery Data Canvas?
BQDC ist ein Werkzeug für Entwickler und Datenanalysten, welches unmittelbar in die gewohnte Web-Oberfläche von BigQuery Studio (BQS) eingebettet ist. I.d.R wird in BQS in jeweils einem Tab eine SQL-Query geschrieben und ausgeführt.
Wie Sie sich vorstellen können, führt dies bei der Erkundung von Datenquellen (v.a. Tabellen und Views) schnell zu vielen parallel geöffneten Tabs zwischen denen Sie nicht nur visuell, sondern auch mental hin und her wechseln müssen, also effizienzraubendes Context-Switching betreiben müssen. Dies verschlimmert sich selbstredend mit der Anzahl der zu untersuchenden Datenquellen und dem Umfang bzw. der Tiefe Ihrer Analyse.
BigQuery Data Canvas zielt darauf ab, diesen Prozess zu vereinfachen und zu optimieren. Mit BQDC können alle Analysen auf einer einzigen „unendlichen Leinwand“ (engl. Canvas) durchgeführt werden, wodurch die Notwendigkeit entfällt, zwischen verschiedenen Tabs hin und her zu wechseln. Dies ermöglicht eine bessere Übersicht und Kontrolle über die durchgeführten Analysen und erleichtert das Erkennen von Zusammenhängen und Mustern in den Daten.
Welche Features hat BQDC noch zu bieten?
Neben der übersichtlicheren Darstellung der Analysen vereinfacht BQDC das Auffinden von Daten durch eine umfangreiche Suchfunktion. Wie eingangs bereits erwähnt, wird die Arbeit in BQDC durch Gemini AI unterstützt, sodass einige Entwicklungstätigkeiten durch das Verfassen von Prompts in natürlicher Sprache gänzlich ausgeführt oder zumindest unterstützt werden können.
So kann auch eine aufgefundene Datenquelle per Prompt in natürlicher Sprache abgefragt werden. Hierbei wird der Prompt in eine SQL-Abfrage übersetzt, welche anschliessend ggf. angepasst und ausgeführt werden kann.
Die Ergebnisse dieser Abfragen sind allerdings nicht alleinstehend in BQDC, sondern können wiederum als Input für neue Abfragen genutzt werden. Hierdurch entsteht dann ein Gerichteter azyklischer Graph, engl. Directed Acyclic Graph oder kurz DAG. Dieser definiert die Ausführungsreihenfolge der einzelnen Abfragen und kann auch als gesamtheitlicher Datenfluss/Pipeline ausgeführt werden. Dadurch deckt sich die technische Definition und Ausführung der Datenverarbeitung auch besser mit dem mentalen Modell von Daten als kontinuierlicher Fluss.
Weiterhin ist es ebenfalls über Prompts möglich zu den Daten aussagekräftige Visualisierungen zu generieren. Hierdurch werden Analysen und Visualisierungen auf einer Oberfläche integriert, was insgesamt zu einer deutlich schnelleren Gewinnung einer Intuition für die Daten führen kann. Welche Charts erzeugt werden können, ist hier einsehbar.
Darüber hinaus kann das Canvas auch gespeichert und mit anderen Personen geteilt werden. Ebenfalls gibt es die Möglichkeit das Canvas bzw. den dort definierten DAG in ein Python bzw. Jupyter Notebook zu konvertieren und dies als Ausgangslage für weitere Arbeiten zu nutzen. Beide Aspekte ermöglichen eine einfachere Kollaboration mehrerer Personen mit unterschiedlichen Rollen.
Welche Ressourcen sind durch die Suchfunktion auffindbar?
Zunächst eine kurze Erläuterung, wie die Suche aus Sicht des Nutzenden funktioniert: Es können entweder mittels natürlicher Sprache zugreifbare Datenquellen im Datenbestand des Projektes aufgefunden werden oder, wenn Sie bereits eine klarere Vorstellung ihrer Datenquellen haben, dann steht Ihnen auch eine umfassende Schlagwort-Suche mit einer eigenen ausdrucksvollen Such-Syntax zur Verfügung. Hierbei werden nicht nur die Namen von Datenquellen berücksichtigt, sondern auch deren Attribute und sonstige verfügbare Beschreibungen.
Nun zur eigentlichen Frage: Die Suchfunktion traversiert selbstverständlich nicht die gesamte GCP nach geeigneten Datenquellen, sondern nutzt hierfür die unter Google Dataplex verwalteten Metadaten. Dataplex sammelt zum Teil die Metadaten Ihres Projektes selbständig, allerdings können hierin auch explizit Datenquellen hinzugefügt werden. Wenn Sie also beispielsweise die Ressourcen Ihres Data Mesh, Data Lakes oder Data Vaults über Dataplex verwalten, werden diese Assets ebenfalls durch die Suche in BQDC auffindbar. Darüber hinaus können auch die von Google bereitgestellten BigQuery Public Datasets durchsucht werden.
Welcher Mehrwert ergibt sich, wenn SQL bereits sehr gut beherrscht wird?
Ein Grossteil jeder SQL-Abfrage ist stets gleich, weshalb die Generierung einer Abfrage die Entwicklungszeit bis zu einem aussagekräftigen Ergebnis stark verkürzen kann, selbst wenn die generierte Abfrage am ursprünglichen angedachten Ergebnis vorbeigeht. Umgangssprachlich könnte man sagen, dass man sich einen Grossteil des “Boilerplate-Codes” generieren lassen kann.
Weiterhin sind viele Prozessierungen in SQL an sich leicht zu definieren, sind aber überaus verbos und repetitiv. Man denke beispielsweise an eine Abfrage, die die insgesamte Anzahl an Records und von jedem Attribut die Anzahl an null-Werten berechnet. Dies kann ein guter Indikator bzgl. der Qualität der Datenquelle sein. Eine solche Abfrage ist an sich nicht kompliziert, aber ein unverhältnismässiger zeitlicher Aufwand, welche durch eine Generierung der Abfrage wegfallen würde.
Weiterhin macht es die integrierte Visualisierungsfunktionalität deutlich leichter einen gesamtheitlichen Blick bzw. umfassende Intuition bzgl. der Daten und derer Qualität zu entwickeln.
Was kostet die Nutzung von BQDC?
Die Nutzung des Services selbst verursacht keine Kosten. Allerdings werden für die Ausführungen der definierten DAGs bzw. Data Pipelines im Hintergrund andere GCP-Services genutzt. Für diese fallen dann die entsprechenden Gebühren an. Der Hauptkostenpunkt wird i. d. R. die Gebühren für Compute und Storage in BigQuery sein. Diese würden allerdings ebenfalls anfallen, wenn die Anfragen nicht über BQDC, sondern unmittelbar aus BQS abgeschickt würden.
Was sind Limitationen von BQDC?
Hier sind die allgemeinen Limitationen von BQDC aufgeführt. Hauptsächlich geht es hierbei um Ressourcen, die von BigQuery zwar genutzt werden können, allerdings nicht nativ für die Technologie sind. Weiterhin gestaltet sich die Generierung von Abfragen auf Metadaten, also das Data Dictionary bzw. Information-Schema schwierig. Ebenfalls können durch geschachtelte Datenstrukturen Probleme für die durch Prompts erstellten Anfragen auftauchen. Hierbei geht es v. a. um die BigQuery Strukturen ARRAY und STRUCT, aber auch um Attribute vom JSON Datentyp.
Was ist BQDC NICHT?
Oftmals ist es auch hilfreich zu wissen, wofür eine bestimmte Technologie nicht geeignet ist bzw. welche Anwendungsfälle besser mit anderen Technologien lösbar sind, um keine falschen Hoffnungen zu schüren.
BQDC ist kein Ersatz für Entwickler wie Data Engineers oder Data Analysts, welche umfangreiche Expertise in SQL und Datenmodellierung im Allgemeinen sowie physischem Datenbank-Design zur Performance-Optimierung besitzen. Allerdings kann BQDC diesen Personen auch helfen, ihre Arbeit einfacher und effizienter zu gestalten.
BQDC ist ebenfalls kein Low- bzw. No-Code Tool, welches Usern mit geringer Erfahrung dabei hilft komplexe Logiken aufzubauen, da die erzeugten Ergebnisse weiterhin auf ihre Richtigkeit und Konsistenz überprüft werden sollten.
Weiterhin ersetzt es keine von Fachexperten entwickelten Data Pipelines, welche mithilfe ausgereifter Technologien entwickelt und mit Sorgfalt getestet wurden. Eine mögliche Technologie, welche eine End-to-End-Pipeline per SQL definieren und ausführen kann, wäre dbt (data building tool). Diesbezüglich haben wir in der Vergangenheit bereits ein Webinar veranstaltet, dessen Aufzeichnung hier zu finden ist.
Mehr wissen?
Sie möchten tiefer in dieses Thema einsteigen? Dann freuen wir uns, persönlich mit Ihnen über die Möglichkeiten der Google Cloud Platform (GCP) zu sprechen.
Published by:
Tobias Vogler
Tobias Vogler
Wie hat Ihnen der Artikel gefallen?
Wie hilfreich war dieser Beitrag?
Klicken Sie auf einen Stern, um zu bewerten!
Durchschnittliche Bewertung 3 / 5.
Anzahl Bewertungen: 2
Bislang keine Stimmen! Seien Sie die erste Person, die diesen Beitrag bewertet!