Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you restart it, you'll have to start from the beginning.
- Click Start lab to begin
Create a new dataset
/ 25
Identify a key field in your ecommerce dataset
/ 25
Pitfall: non-unique key
/ 25
Join pitfall solution
/ 25
BigQuery ist eine vollständig verwaltete, automatisierte und kostengünstige Analysedatenbank von Google. Mit diesem Tool können Sie mehrere Terabyte an Daten abfragen und müssen dabei weder eine Infrastruktur verwalten, noch benötigen Sie einen Datenbankadministrator. BigQuery basiert auf SQL und die Abrechnung erfolgt nach dem „Pay as you go“-Modell. Mithilfe von BigQuery können Sie sich auf die Datenanalyse konzentrieren und wichtige Informationen erhalten.
Durch das Zusammenführen von Datentabellen können Sie wichtige Einblicke in Ihr Dataset gewinnen. Damit Sie aussagekräftige Ergebnisse erhalten, gilt es jedoch, beim Erstellen eines Joins einige häufige Stolperfallen zu vermeiden. Darum soll es in diesem Lab gehen. Es gibt folgende Join-Typen:
Weitere Informationen zu Joins finden Sie auf der Seite „Join“.
In diesem Lab arbeiten Sie in BigQuery mit der Kopie eines E-Commerce-Datasets, das Millionen von Google Analytics-Einträgen des Google Merchandise Store enthält. Ihre Aufgabe ist es, anhand der verfügbaren Felder und Zeilen bestimmte Informationen abzurufen.
Informationen zur Syntax, die Ihnen dabei helfen, die Abfragen nachzuvollziehen und zu aktualisieren, finden Sie unter Standard-SQL-Abfragesyntax.
Aufgaben in diesem Lab:
Lesen Sie diese Anleitung. Labs sind zeitlich begrenzt und können nicht pausiert werden. Der Timer beginnt zu laufen, wenn Sie auf Lab starten klicken, und zeigt Ihnen, wie lange die Ressourcen für das Lab verfügbar sind.
In diesem praxisorientierten Lab können Sie die Lab-Aktivitäten in einer echten Cloud-Umgebung selbst durchführen – nicht in einer Simulations- oder Demo-Umgebung. Dazu erhalten Sie neue, temporäre Anmeldedaten, mit denen Sie für die Dauer des Labs auf Google Cloud zugreifen können.
Für dieses Lab benötigen Sie Folgendes:
Klicken Sie auf Lab starten. Wenn Sie für das Lab bezahlen müssen, wird ein Pop-up-Fenster geöffnet, in dem Sie Ihre Zahlungsmethode auswählen können. Auf der linken Seite befindet sich der Bereich Details zum Lab mit diesen Informationen:
Klicken Sie auf Google Cloud Console öffnen (oder klicken Sie mit der rechten Maustaste und wählen Sie Link in Inkognitofenster öffnen aus, wenn Sie Chrome verwenden).
Im Lab werden Ressourcen aktiviert. Anschließend wird ein weiterer Tab mit der Seite Anmelden geöffnet.
Tipp: Ordnen Sie die Tabs nebeneinander in separaten Fenstern an.
Kopieren Sie bei Bedarf den folgenden Nutzernamen und fügen Sie ihn in das Dialogfeld Anmelden ein.
Sie finden den Nutzernamen auch im Bereich Details zum Lab.
Klicken Sie auf Weiter.
Kopieren Sie das folgende Passwort und fügen Sie es in das Dialogfeld Willkommen ein.
Sie finden das Passwort auch im Bereich Details zum Lab.
Klicken Sie auf Weiter.
Klicken Sie sich durch die nachfolgenden Seiten:
Nach wenigen Augenblicken wird die Google Cloud Console in diesem Tab geöffnet.
Zuerst wird das Fenster Willkommen bei BigQuery in der Cloud Console geöffnet, das neben allgemeinen Informationen auch einen Link zur Kurzanleitung und zu den Versionshinweisen enthält.
Die BigQuery Console wird geöffnet.
Erstellen Sie in Ihrem BigQuery-Projekt ein neues Dataset mit dem Namen ecommerce
.
Das Dialogfeld Dataset erstellen wird geöffnet.
Legen Sie als Dataset-ID den Namen ecommerce
fest.
Verwenden Sie für die anderen Optionen die Standardwerte und klicken Sie auf Dataset erstellen.
Im linken Bereich sehen Sie dann eine Tabelle mit dem Namen ecommerce
, die unter Ihrem Projekt aufgeführt ist.
Klicken Sie auf Fortschritt prüfen.
Folgendes Szenario: Ihr Team stellt Ihnen ein neues Dataset zu den Lagerbeständen für jedes Ihrer Produkte bereit, die auf Ihrer E-Commerce-Website zum Verkauf stehen. Ihre Aufgabe ist es, sich mit den Produkten auf der Website und den Feldern, die Sie zum Zusammenführen mit anderen Datasets verwenden können, vertraut zu machen.
Das Projekt mit dem neuen Dataset heißt data-to-insights.
Das Fenster „Welcome to BigQuery in the Cloud Console“ (Willkommen bei BigQuery in der Cloud Console) wird geöffnet.
Klicken Sie auf Fertig.
Öffentliche BigQuery-Datasets werden nicht standardmäßig angezeigt. So öffnen Sie das öffentliche Datasets-Projekt: Kopieren Sie data-to-insights.
Klicken Sie auf + Hinzufügen > Projekt nach Name markieren. Fügen Sie dann den data-to-insights-Namen ein.
Klicken Sie auf Markieren.
Das data-to-insights
-Projekt ist jetzt im Abschnitt „Explorer“ aufgelistet.
Machen Sie sich nun mit den Produkten und Feldern auf der Website vertraut, mit denen Sie Abfragen zur Analyse des Datasets erstellen können.
Gehen Sie dazu im linken Bereich unter „Ressourcen“ zu data-to-insights
> ecommerce
> all_sessions_raw
.
Klicken Sie rechts (unter dem Abfrageeditor) auf den Tab Schema, um die Felder und Informationen zu den einzelnen Feldern anzeigen zu lassen.
Sehen Sie sich die Produkte auf der Website und die Felder genau an. Ihre Aufgabe ist es, sich mit den Produkten auf der Website und den Feldern, die Sie zum Zusammenführen mit anderen Datasets verwenden können, vertraut zu machen.
In diesem Abschnitt finden Sie heraus, wie viele Produktnamen und Produkt-SKUs auf Ihrer Website vorhanden sind und ob diese Felder eindeutig sind.
Wenn Sie erfahren möchten, wie viele Datensätze insgesamt ausgegeben wurden, sehen Sie sich die Paginierungsergebnisse in der Console an.
Aber bedeutet dies, dass es tatsächlich so viele eindeutige SKUs gibt? Eine der ersten Abfragen, die Sie als Data Analyst durchführen werden, ist die Überprüfung der Eindeutigkeit Ihrer Datenwerte.
DISTINCT
aufzulisten:Ermitteln Sie jetzt, welche Produkte mehr als eine SKU haben und welche SKUs zu mehr als einem Produktnamen gehören.
Das Ergebnis:
Der Katalog der E-Commerce-Website zeigt, dass jeder Produktname mehrere Optionen (Größe, Farbe) haben kann, die als separate SKUs verkauft werden.
Sie sehen also, dass 1 Produkt 12 SKUs haben kann. Wie genau sollte eine einzelne SKU verwendet werden? Sollte es zulässig sein, dass sie mehr als einem Produkt zugeordnet ist?
Im nächsten Abschnitt sehen Sie, warum diese m:n-Beziehung ein Problem darstellt.
Klicken Sie auf Fortschritt prüfen.
Bei der Bestandsverfolgung dient eine SKU dazu, genau ein einziges Produkt eindeutig zu identifizieren. Für uns bildet sie die Grundlage Ihrer JOIN-Bedingung, wenn Sie Informationen in anderen Tabellen nachschlagen. Wie wir feststellen werden, kann ein nicht eindeutiger Schlüssel zu schwerwiegenden Datenproblemen führen.
'GGOEGPJC019099'
ermitteln.Mögliche Lösung:
v2ProductName |
productSKU |
Hundefrisbee 7" |
GGOEGPJC019099 |
Hundefrisbee 7" |
GGOEGPJC019099 |
Hundeflugscheibe blau 7 Zoll |
GGOEGPJC019099 |
Sie sehen, dass in den Abfrageergebnissen drei verschiedene Namen für dasselbe Produkt auftauchen. In diesem Beispiel ist einmal ein Sonderzeichen vorhanden und einmal wird eine nur leicht abweichende Bezeichnung verwendet:
Sehen Sie sich nun an, welche Auswirkungen ein Zusammenführen auf ein Dataset hat, wenn es mehrere Produkten mit der gleichen SKU gibt. Prüfen Sie zuerst im Produktinventar-Dataset (die Tabelle products
), ob diese SKU dort eindeutig ist.
Wir haben nun zwei Datasets: eines für den Lagerbestand und das andere für unsere Website-Analysen. Erstellen Sie als Nächstes ein JOIN des Inventar-Datasets mit den Produktnamen Ihrer Website und den SKUs, damit der Lagerbestand des jeweiligen Produkts auf der Website angezeigt werden kann.
Als Nächstes erweitern wir unsere vorherige Abfrage, um mit SUM ganz einfach die Summe des verfügbaren Bestands nach Produkt zu ermitteln.
Oh nein! Es wird 154 × 3 = 462, also die dreifache Zahl angezeigt. Dies wird als unbeabsichtigter Cross Join bezeichnet. Wir kommen später auf dieses Thema zurück.
Klicken Sie auf Fortschritt prüfen.
Welche Möglichkeiten gibt es, das Problem der Dreifachzählung zu lösen? Zuerst einmal dürfen Sie nur verschiedene Artikelnummern von der Website auswählen, bevor Sie sie mit anderen Datasets zusammenführen.
Sie wissen, dass sich mehr als ein Produktname (z. B. 7-Zoll-Frisbee für Hunde) eine einzige SKU teilen können.
Statt einer Zeile für jeden Produktnamen haben Sie jetzt nur noch eine Zeile für jede eindeutige SKU.
Jetzt können Sie die Daten mit dem Produktinventar-Dataset zusammenführen.
Wie es aussieht, sind 819 SKUs nach dem Zusammenführen der Datasets verloren gegangen. Wir untersuchen das genauer und machen mit einer SKU-Spalte aus jedem Dataset unsere Felder spezifischer:
Anscheinend sind die SKUs für diese 1.090 Datensätze nach dem Join in beiden Datasets vorhanden. Wie können Sie die fehlenden Datensätze finden?
Der Standard-JOIN-Typ ist ein INNER JOIN. Dieser gibt nur Einträge aus, wenn sowohl auf der linken als auch auf der rechten zusammengeführten Tabelle eine Übereinstimmung der SKU besteht.
Mögliche Lösung:
Sie haben einen LEFT JOIN durchgeführt, mit dem alle 1.909 Artikelnummern der Website ausgegeben werden.
Wie viele Artikelnummern aus Ihrem Produktinventar-Dataset fehlen?
Mögliche Lösung:
Frage: Wie viele Produkte fehlen?
Antwort: Es fehlen 819 Produkte (ARTIKELNUMMER IST NULL) aus Ihrem Produktinventar-Dataset.
Wie sieht es nun umgekehrt aus? Gibt es Produkte, die im Produktinventar-Dataset vorhanden sind, aber auf der Website fehlen?
Mögliche Lösung:
Antwort: Ja. Es gibt zwei Artikelnummern, die im Website-Dataset fehlen.
Fügen Sie als Nächstes weitere Felder aus dem Produktinventar-Dataset hinzu, um weitere Informationen zu erhalten.
Warum könnten die unten stehenden Produkte im ecommerce-Dataset fehlen?
website_SKU |
SKU |
name |
orderedQuantity |
stockLevel |
restockingLeadTime |
sentimentScore |
sentimentMagnitude |
null |
GGOBJGOWUSG69402 |
USB-Soundbar – nur im Geschäft |
10 |
15 |
2 |
1.0 |
1.0 |
null |
GGADFBSBKS42347 |
PC-Gaming-Lautsprecher |
0 |
100 |
1 |
null |
null |
Mögliche Antworten:
Warum wird das neue Produkt nicht in Ihrem Website-Dataset angezeigt?
Was müssten Sie tun, um eine Abfrage zu erhalten, in der alle Produkte angezeigt werden, die sowohl auf der Website als im Inventar fehlen?
Mögliche Lösung:
Sie haben 819 + 2 = 821 Produkt-SKUs.
LEFT JOIN + RIGHT JOIN = FULL JOIN, der alle Einträge aus beiden Tabellen ausgibt, unabhängig von übereinstimmenden Join-Schlüsseln. Dann filtern Sie heraus, wo auf beiden Seiten Nichtübereinstimmungen bestehen.
Wenn Sie die Beziehung zwischen Datentabellenschlüsseln (1:1, 1:N, N:N) nicht kennen, kann dies zu unerwarteten Ergebnissen führen und die Abfrageleistung erheblich reduzieren.
Der letzte Join-Typ ist der CROSS JOIN.
Erstellen Sie eine neue Tabelle mit einem prozentualen Rabatt, der für die gesamte Website für Produkte aus der Kategorie „Ausverkauf“ gilt.
Auf der linken Seite wird site_wide_promotion
nun im Abschnitt „Ressource“ unter Ihrem Projekt und Dataset aufgeführt.
Sehen wir uns an, welche Auswirkungen es hat, wenn in der Rabatttabelle unabsichtlich mehr als ein Eintrag hinzugefügt wird.
Als Nächstes sehen wir uns die Datenwerte in der Rabatttabelle an.
Wie viele Einträge wurden ausgegeben?
Antwort: 3
Was passiert, wenn Sie den Rabatt noch einmal auf alle 82 Produkte im Ausverkauf anwenden?
Wie viele Produkte werden ausgegeben?
Antwort: Statt 82 werden nun 246 Produkte ausgegeben, also mehr als in der Originaltabelle.
Die Ursache dafür lässt sich herausfinden, wenn wir eine einzelne Produkt-SKU betrachten.
Welche Auswirkungen hatte der CROSS JOIN?
Antwort: Da es drei Rabattcodes gibt, für die ein Cross Join durchgeführt werden kann, wird das ursprüngliche Dataset verdreifacht.
Lösung: Sie müssen die Datenbeziehungen kennen, bevor Sie einen Join erstellen, und Sie dürfen nicht davon ausgehen, dass die Schlüssel eindeutig sind.
Klicken Sie auf Fortschritt prüfen.
In diesem Lab haben Sie gelernt, wie Sie doppelte Einträge erkennen und wann Sie welchen Join-Typ verwenden sollten. So können Sie schwerwiegende SQL-Probleme vermeiden. Gut gemacht!
In unseren Schulungen erfahren Sie alles zum optimalen Einsatz unserer Google Cloud-Technologien und können sich entsprechend zertifizieren lassen. Unsere Kurse vermitteln technische Fähigkeiten und Best Practices, damit Sie möglichst schnell mit Google Cloud loslegen und Ihr Wissen fortlaufend erweitern können. Wir bieten On-Demand-, Präsenz- und virtuelle Schulungen für Anfänger wie Fortgeschrittene an, die Sie individuell in Ihrem eigenen Zeitplan absolvieren können. Mit unseren Zertifizierungen weisen Sie nach, dass Sie Experte im Bereich Google Cloud-Technologien sind.
Anleitung zuletzt am 3. Februar 2024 aktualisiert
Lab zuletzt am 20. September 2023 getestet
© 2025 Google LLC. Alle Rechte vorbehalten. Google und das Google-Logo sind Marken von Google LLC. Alle anderen Unternehmens- und Produktnamen können Marken der jeweils mit ihnen verbundenen Unternehmen sein.