Daten mit KI-Agents in BigQuery-Codelab vorbereiten

Daten mit KI-Agents in BigQuery-Codelab vorbereiten

Informationen zu diesem Codelab

subjectZuletzt aktualisiert: Apr. 9, 2025
account_circleVerfasst von Tim Bezold

1. Einführung

Stellen Sie sich vor, Sie könnten Ihre Daten schneller und effizienter für die Analyse vorbereiten, ohne Programmierexperte zu sein. Mit der BigQuery-Datenvorbereitung ist das möglich. Diese leistungsstarke Funktion vereinfacht die Datenaufnahme, -transformation und ‑bereinigung und ermöglicht allen Datenexperten in Ihrem Unternehmen die Datenvorbereitung.

Möchten Sie das Potenzial Ihrer Produktdaten erschließen?

Voraussetzungen

  • Grundlegende Kenntnisse der Google Cloud Console
  • Grundkenntnisse in SQL

Aufgaben in diesem Lab

  • Anhand eines realistischen Beispiels aus der Mode- und Beautybranche wird gezeigt, wie Sie mit der Datenvorbereitung in BigQuery Rohdaten bereinigen und in umsetzbare Business Intelligence-Daten umwandeln können.
  • Datenvorbereitung für bereinigte Daten ausführen und planen

Voraussetzungen

  • Ein Google Cloud-Konto und ein Google Cloud-Projekt
  • Einen Webbrowser wie Chrome

2. Grundlegende Einrichtung und Anforderungen

Einrichtung der Umgebung im eigenen Tempo

  1. Melden Sie sich in der Google Cloud Console an und erstellen Sie ein neues Projekt oder verwenden Sie ein vorhandenes. Wenn Sie noch kein Gmail- oder Google Workspace-Konto haben, müssen Sie ein Konto erstellen.

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • Der Projektname ist der Anzeigename für die Teilnehmer dieses Projekts. Es ist ein Zeichenstring, der von Google APIs nicht verwendet wird. Sie können ihn jederzeit aktualisieren.
  • Die Projekt-ID ist für alle Google Cloud-Projekte eindeutig und kann nach der Festlegung nicht mehr geändert werden. In der Cloud Console wird automatisch ein eindeutiger String generiert. In der Regel spielt es keine Rolle, wie er lautet. In den meisten Codelabs müssen Sie auf Ihre Projekt-ID verweisen (normalerweise als PROJECT_ID gekennzeichnet). Wenn Ihnen die generierte ID nicht gefällt, können Sie eine andere zufällige generieren. Alternativ können Sie Ihr eigenes Konto ausprobieren und prüfen, ob es verfügbar ist. Sie kann nach diesem Schritt nicht mehr geändert werden und bleibt für die Dauer des Projekts bestehen.
  • Zur Information: Es gibt einen dritten Wert, die Projektnummer, die von einigen APIs verwendet wird. Weitere Informationen zu diesen drei Werten finden Sie in der Dokumentation.
  1. Als Nächstes müssen Sie die Abrechnung in der Cloud Console aktivieren, um Cloud-Ressourcen/-APIs verwenden zu können. Die Durchführung dieses Codelabs ist kostenlos oder kostet nur sehr wenig. Wenn Sie die Ressourcen deaktivieren möchten, um weitere Kosten nach Abschluss dieser Anleitung zu vermeiden, können Sie die von Ihnen erstellten Ressourcen oder das Projekt löschen. Neuen Google Cloud-Nutzern steht das Programm Kostenloser Testzeitraum mit 300$Guthaben zur Verfügung.

3. Hinweis

API aktivieren

Damit Sie Gemini in BigQuery verwenden können, müssen Sie die Gemini for Google Cloud API aktivieren. Dieser Schritt wird in der Regel von einem Dienstadministrator oder Projektinhaber mit der IAM-Berechtigung serviceusage.services.enable ausgeführt.

  1. Rufen Sie im Google Cloud Marketplace die Seite Gemini for Google Cloud auf, um die Gemini for Google Cloud API zu aktivieren. Zu Gemini für Google Cloud
  2. Klicken Sie auf die Projektauswahl Projekt auswählen.
  3. Klicken Sie auf Aktivieren. Die Seite wird aktualisiert und zeigt den Status Aktiviert an. Gemini in BigQuery ist jetzt im ausgewählten Google Cloud-Projekt für alle Nutzer verfügbar, die die erforderlichen IAM-Berechtigungen haben.

Rollen und Berechtigungen für die Entwicklung von Datenvorbereitungen einrichten

  1. Wählen Sie unter „IAM und Verwaltung“ die Option „IAM“ aus.

4477412d79f29e0b.png

  1. Wählen Sie den Nutzer aus und klicken Sie auf das Stiftsymbol, um „Principal bearbeiten“ auszuwählen.

5eb558e04ad12362.png

Für die Verwendung der BigQuery-Datenvorbereitung benötigen Sie die folgenden Rollen und Berechtigungen:

4. Eintrag „bq data preparation demo“ in BigQuery Analytics Hub suchen und abonnieren

In dieser Anleitung verwenden wir das Dataset bq data preparation demo. Es ist ein verknüpftes Dataset in BigQuery Analytics Hub, aus dem wir Daten lesen.

Bei der Datenvorbereitung werden die Daten nie wieder in die Quelle zurückgeschrieben. Sie müssen eine Zieltabelle definieren, in die geschrieben werden soll. Die Tabelle, mit der wir in dieser Übung arbeiten, enthält nur 1.000 Zeilen, um die Kosten niedrig zu halten. Die Datenvorbereitung wird jedoch in BigQuery ausgeführt und skaliert entsprechend.

So finden und abonnieren Sie den verknüpften Datensatz:

  1. Analytics Hub aufrufen: Rufen Sie in der Google Cloud Console BigQuery auf.
  2. Wählen Sie im BigQuery-Navigationsmenü unter „Verwaltung“ die Option „Analytics Hub“ aus.

6ddfac4dd863ca7b.png

  1. Nach dem Eintrag suchen: Klicken Sie in der Analytics Hub-Benutzeroberfläche auf Einträge suchen.
  2. Geben Sie bq data preparation demo in die Suchleiste ein und drücken Sie die Eingabetaste.

7e0cb82b80174cdc.png

  1. Eintrag abonnieren: Wählen Sie in den Suchergebnissen den Eintrag bq data preparation demo aus.
  2. Klicken Sie auf der Seite mit den Details zum Eintrag auf die Schaltfläche Abonnieren.
  3. Lesen Sie alle Bestätigungsdialogfelder und aktualisieren Sie das Projekt/den Datensatz bei Bedarf. Die Standardeinstellungen sollten korrekt sein.

2ef0ac1e3557f2f9.png

  1. Auf das Dataset in BigQuery zugreifen: Nachdem Sie das Abo abgeschlossen haben, werden die Datasets im Eintrag mit Ihrem BigQuery-Projekt verknüpft.

Kehren Sie zu BigQuery Studio zurück.

5. Daten untersuchen und Datenvorbereitung starten

  1. Dataset und Tabelle suchen: Wählen Sie im Explorer-Fenster Ihr Projekt aus und suchen Sie dann nach dem Dataset, das im bq data preparation demo-Eintrag enthalten war. Wählen Sie die Tabelle stg_product aus.
  2. In der Datenvorbereitung öffnen: Klicken Sie auf das Dreipunkt-Menü neben dem Tabellennamen und wählen Sie Open in Data Preparation aus.

Daraufhin wird die Tabelle in der Datenvorbereitungsoberfläche geöffnet und Sie können mit der Transformation Ihrer Daten beginnen.

76ace3d4b5cfc2d0.png

Wie Sie in der Datenvorschau unten sehen, gibt es einige Datenherausforderungen, die wir angehen werden. Dazu gehören:

  • Die Preisspalte enthält sowohl den Betrag als auch die Währung, was die Analyse erschwert.
  • In der Produktspalte sind der Produktname und die Kategorie enthalten, die durch einen senkrechten Strich | getrennt sind.

f4d93aa59a56447a.png

Gemini analysiert Ihre Daten sofort und schlägt mehrere Transformationen vor. In diesem Beispiel sehen wir eine Reihe von Empfehlungen. In den nächsten Schritten wenden wir die erforderlichen an.

fd4d14e4fa3c31c1.png

6. Umgang mit der Preisspalte

Sehen wir uns die Spalte Preis an. Wie wir bereits gesehen haben, enthält es sowohl die Währung als auch den Betrag. Unser Ziel ist es, diese in zwei separate Spalten aufzuteilen:Währung und Betrag.

Gemini hat mehrere Empfehlungen für die Spalte „Preis“ identifiziert.

  1. Suchen Sie nach einer Empfehlung, die in etwa so lautet:

Beschreibung: „Mit diesem Ausdruck wird das vorangestellte ‚EUR‘ aus dem angegebenen Feld entfernt.“

REGEXP_REPLACE(Price,` `r'^USD\s',` `r'')
  1. Wählen Sie „Vorschau“ aus.

c9327cfbd32247d6.png

  1. Wählen Sie „Übernehmen“ aus.

Als Nächstes konvertieren wir den Datentyp der Spalte „Preis“ von STRING in NUMERIC.

  1. Suchen Sie nach einer Empfehlung, die in etwa so lautet:

Beschreibung: „Konvertiert die Spalte ‚Preis‘ vom Typ String in float64“

SAFE_CAST(Price AS float64)
  1. Wählen Sie „Übernehmen“ aus.

In der Schrittliste sollten jetzt drei angewendete Schritte angezeigt werden.

d3359af47dce0c15.png

7. Umgang mit der Produktspalte

Die Produktspalte enthält sowohl den Produktnamen als auch die Kategorie, getrennt durch einen Bindestrich (|).

Wir könnten wieder natürliche Sprache verwenden, aber sehen wir uns stattdessen eine weitere leistungsstarke Funktion von Gemini an.

Produktnamen bereinigen

  1. Wählen Sie den Kategorieteil eines Produkteintrags einschließlich des Zeichens | aus und löschen Sie ihn.

5171d598a8cb3a75.png

Gemini erkennt dieses Muster intelligent und schlägt eine Transformation vor, die auf die gesamte Spalte angewendet werden soll.

  1. Wählen Sie „Bearbeiten“ aus.

b36cac918b4f30e9.png

Die Empfehlung von Gemini ist genau richtig: Es wird alles nach dem Zeichen „|“ entfernt, wodurch der Produktname effektiv isoliert wird.

Dieses Mal möchten wir unsere ursprünglichen Daten jedoch nicht überschreiben.

  1. Wählen Sie im Drop-down-Menü „Zielspalte“ die Option „Neue Spalte erstellen“ aus.
  2. Legen Sie als Name ProductName fest.

bda19e0e5e536ccd.png

  1. Sehen Sie sich die Änderungen in der Vorschau an, um sicherzugehen, dass alles in Ordnung ist.
  2. Wenden Sie die Transformation an.

Produktkategorie extrahieren

Wir geben Gemini in natürlicher Sprache die Anweisung, das Wort nach dem Bindestrich (|) in der Spalte „Produkt“ zu extrahieren. Dieser extrahierte Wert wird in der vorhandenen Spalte „Produkt“ überschrieben.

  1. Klicken Sie auf Add Step, um einen neuen Transformationsschritt hinzuzufügen.

77944047e698494c.png

  1. Wählen Sie im Drop-down-Menü Transformation aus.
  2. Geben Sie in das Feld für Natural Language Prompts „das Wort nach dem Pipe (|) in der Spalte ‚Produkt‘ extrahieren“ ein und drücken Sie die Eingabetaste, um die SQL-Abfrage zu generieren.

82efc2447a3210bd.png

  1. Lassen Sie die Zielspalte bei „Produkt“
  2. Klicken Sie auf Anwenden.

Die Transformation sollte die folgenden Ergebnisse liefern.

d741c66d9e0e8e00.png

8. Zusammenführen, um die Daten zu ergänzen

Oft möchten Sie Ihre Daten mit Informationen aus anderen Quellen anreichern. In unserem Beispiel verknüpfen wir unsere Produktdaten mit erweiterten Produktattributen (stg_extended_product) aus einer Drittanbietertabelle. Diese Tabelle enthält Details wie Marke und Einführungsdatum.

  1. Klicken Sie auf Add Step.
  2. Join“ auswählen
  3. Rufen Sie die Tabelle stg_extended_product auf.

dca14451c3fbc7f0.png

Gemini in BigQuery hat den Join-Schlüssel „productid“ automatisch für uns ausgewählt und die linke und rechte Seite qualifiziert, da der Schlüsselname identisch ist.

Hinweis: Das Beschreibungsfeld muss „Join by productid“ enthalten. Wenn er zusätzliche Join-Schlüssel enthält, überschreiben Sie das Beschreibungsfeld mit „Join by productid“ und wählen Sie im Beschreibungsfeld die Schaltfläche „Generate“ (Generieren) aus, um den Join-Ausdruck mit der folgenden Bedingung neu zu generieren: L.

productid

= R.

productid. 4d6dbfea28772f34.png

  1. Optional: Wählen Sie „Vorschau“ aus, um eine Vorschau der Ergebnisse zu sehen.
  2. Klicken Sie auf Apply.

Erweiterte Attribute bereinigen

Die Zusammenführung war zwar erfolgreich, die Daten der erweiterten Attribute müssen jedoch noch bereinigt werden. Die Spalte LaunchDate enthält inkonsistente Datumsformate und die Spalte Brand einige fehlende Werte.

Beginnen wir mit der Spalte LaunchDate.

f9b570d7c2d3a98d.png

Sehen Sie sich die Empfehlungen von Gemini an, bevor Sie Transformationen erstellen.

  1. Klicken Sie auf den Spaltennamen LaunchDate. Es sollten Empfehlungen angezeigt werden, die denen im Bild unten ähneln.

62b6e6027a46ba75.png

  1. Wenn Sie eine Empfehlung mit dem folgenden SQL-Code sehen, übernehmen Sie sie und überspringen Sie die nächsten Schritte.
COALESCE(SAFE.PARSE_DATE('%Y-%m-%d',
LaunchDate),SAFE.PARSE_DATE('%Y/%m/%d', LaunchDate))
  1. Wenn keine Empfehlung angezeigt wird, die dem SQL-Code oben entspricht, klicken Sie auf Add Step.
  2. Wählen Sie Transformation aus.
  3. Geben Sie im SQL-Feld Folgendes ein:
COALESCE(SAFE.PARSE_DATE('%Y-%m-%d',
LaunchDate),SAFE.PARSE_DATE('%Y/%m/%d', LaunchDate))
  1. Legen Sie Target Columns auf LaunchDate fest.
  2. Klicken Sie auf Apply.

Die Spalte „LaunchDate“ hat jetzt ein einheitliches Datumsformat.

ccf34aa05754a834.png

9. Zieltabelle hinzufügen

Unser Datensatz ist jetzt bereinigt und kann in eine Dimensionstabelle in unserem Data Warehouse geladen werden.

  1. Klicken Sie auf ADD STEP.
  2. Wählen Sie Destination aus.
  3. Geben Sie die erforderlichen Parameter ein: Datensatz: bq_data_preparation_demo Tabelle: DimProduct
  4. Klicken Sie auf Save.

79fdc3666a3a21b9.png

Wir haben jetzt mit den Tabs „Daten“ und „Schema“ gearbeitet. Darüber hinaus bietet BigQuery Data Preparation eine „Diagramm“-Ansicht, in der die Abfolge der Transformationsschritte in Ihrer Pipeline visuell dargestellt wird.

95e64d8152228f7b.png

10. Bonus A: Umgang mit der Spalte „Hersteller“ und Erstellen einer Fehlertabelle

Außerdem haben wir leere Werte in der Spalte Manufacturer gefunden. Für diese Datensätze möchten wir eine Datenqualitätsprüfung implementieren und sie zur weiteren Überprüfung in eine Fehlertabelle verschieben.

Fehlertabelle erstellen

  1. Klicke neben dem Titel stg_product data preparation auf die Schaltfläche More.
  2. Wählen Sie unter Setting die Option Error Table aus.
  3. Setzen Sie ein Häkchen in das Kästchen Enable error table und konfigurieren Sie die Einstellungen so:
  • Dataset: Wählen Sie bq_data_preparation_demo aus.
  • Tabelle: Geben Sie err_dataprep ein.
  • Wählen Sie unter Define duration for keeping errors die Option 30 days (default) aus.
  1. Klicken Sie auf Save.

adb5722f05c1b205.png

Validierung für die Spalte „Hersteller“ einrichten

  1. Wählen Sie die Spalte „Hersteller“ aus.
  2. Gemini hat wahrscheinlich eine relevante Transformation erkannt. Suchen Sie die Empfehlung, bei der nur Zeilen beibehalten werden, bei denen das Feld „Hersteller“ nicht leer ist. Die SQL-Anfrage sieht in etwa so aus:
Manufacturer IS NOT NULL

2.Klicken Sie bei dieser Empfehlung auf die Schaltfläche „Bearbeiten“, um sie zu überprüfen.

4749b551a03d8193.png

  1. Aktivieren Sie die Option Zeilen mit fehlgeschlagener Validierung werden an die Fehlertabelle gesendet, falls dies noch nicht geschehen ist.
  2. Klicken Sie auf Apply.

Sie können die angewendeten Transformationen jederzeit überprüfen, ändern oder löschen, indem Sie auf die Schaltfläche „Angewandte Schritte“ klicken.

15df6caacbdd6a69.png

Redundante Spalte „ProductID_1“ bereinigen

Die Spalte „ProductID_1“, die die ProductID aus unserer zusammengeführten Tabelle dupliziert, kann jetzt gelöscht werden.

  1. Rufen Sie den Tab Schema auf.
  2. Klicken Sie auf die drei Punkte neben der Spalte ProductID_1.
  3. Klicken Sie auf Drop.

Wir sind jetzt bereit, den Job zur Datenvorbereitung auszuführen und unsere gesamte Pipeline zu validieren. Sobald wir mit den Ergebnissen zufrieden sind, können wir den Job so planen, dass er automatisch ausgeführt wird.

  1. Bevor Sie die Datenvorbereitungsdaten verlassen, speichern Sie Ihre Vorbereitungen. Neben dem Titel von stg_product data preparation sollte die Schaltfläche Save angezeigt werden. Klicken Sie auf die Schaltfläche, um die Änderungen zu speichern.

11. Umgebung bereinigen

  • Löschen Sie die stg_product data preparation:
  • Dataset bq data preparation demo löschen

12. Glückwunsch

Herzlichen Glückwunsch zum Abschluss des Codelabs.

Behandelte Themen

  • Datenvorbereitung einrichten
  • Tabellen öffnen und die Datenvorbereitung aufrufen
  • Spalten mit numerischen Daten und Einheitenbeschreibern aufteilen
  • Datumsformate standardisieren
  • Datenvorbereitungen ausführen