GSP071

Übersicht
Das Speichern und Abfragen umfangreicher Datasets kann ohne die richtige Hardware und Infrastruktur zeitaufwendig und teuer sein. BigQuery ist ein serverloses, hoch skalierbares Cloud Data Warehouse, das dieses Problem durch die sehr schnelle Abwicklung von SQL-Abfragen löst. Dabei wird die Rechenleistung der Google-Infrastruktur genutzt. Verschieben Sie einfach Ihre Daten zu BigQuery und überlassen Sie uns den Rest. Sie können den Zugriff auf das Projekt und auf Ihre Daten entsprechend Ihren Unternehmensanforderungen steuern und anderen Personen das Aufrufen oder Abfragen Ihrer Daten ermöglichen.
Der Zugriff auf BigQuery erfolgt entweder über die Console, die Web-Benutzeroberfläche oder ein Befehlszeilentool mithilfe verschiedener Clientbibliotheken wie Java, .NET oder Python. Außerdem gibt es verschiedene Lösungsanbieter, die Sie zur Interaktion mit BigQuery nutzen können.
In diesem praxisorientierten Lab lernen Sie, wie Sie das Python-basierte Befehlszeilentool bq
für BigQuery verwenden, um damit Tabellen in einem öffentlichen Dataset abzufragen und Beispieldateien in BigQuery zu laden.
Aufgaben
- Öffentliches Dataset abfragen
- Neues Dataset erstellen
- Daten in neue Tabelle laden
- Benutzerdefinierte Tabelle abfragen
Einrichtung und Anforderungen
Vor dem Klick auf „Start Lab“ (Lab starten)
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 Google Cloud-Ressourcen für das Lab verfügbar sind.
In diesem praxisorientierten Lab können Sie die Lab-Aktivitäten in einer echten Cloud-Umgebung 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:
- Einen Standardbrowser (empfohlen wird Chrome)
Hinweis: Nutzen Sie den privaten oder Inkognitomodus (empfohlen), um dieses Lab durchzuführen. So wird verhindert, dass es zu Konflikten zwischen Ihrem persönlichen Konto und dem Teilnehmerkonto kommt und zusätzliche Gebühren für Ihr persönliches Konto erhoben werden.
- Zeit für die Durchführung des Labs – denken Sie daran, dass Sie ein begonnenes Lab nicht unterbrechen können.
Hinweis: Verwenden Sie für dieses Lab nur das Teilnehmerkonto. Wenn Sie ein anderes Google Cloud-Konto verwenden, fallen dafür möglicherweise Kosten an.
Lab starten und bei der Google Cloud Console anmelden
-
Klicken Sie auf Lab starten. Wenn Sie für das Lab bezahlen müssen, wird ein Dialogfeld 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:
- Schaltfläche „Google Cloud Console öffnen“
- Restzeit
- Temporäre Anmeldedaten für das Lab
- Ggf. weitere Informationen für dieses Lab
-
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.
Hinweis: Wird das Dialogfeld Konto auswählen angezeigt, klicken Sie auf Anderes Konto verwenden.
-
Kopieren Sie bei Bedarf den folgenden Nutzernamen und fügen Sie ihn in das Dialogfeld Anmelden ein.
{{{user_0.username | "Username"}}}
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.
{{{user_0.password | "Password"}}}
Sie finden das Passwort auch im Bereich „Details zum Lab“.
-
Klicken Sie auf Weiter.
Wichtig: Sie müssen die für das Lab bereitgestellten Anmeldedaten verwenden. Nutzen Sie nicht die Anmeldedaten Ihres Google Cloud-Kontos.
Hinweis: Wenn Sie Ihr eigenes Google Cloud-Konto für dieses Lab nutzen, können zusätzliche Kosten anfallen.
-
Klicken Sie sich durch die nachfolgenden Seiten:
- Akzeptieren Sie die Nutzungsbedingungen.
- Fügen Sie keine Wiederherstellungsoptionen oder Zwei-Faktor-Authentifizierung hinzu (da dies nur ein temporäres Konto ist).
- Melden Sie sich nicht für kostenlose Testversionen an.
Nach wenigen Augenblicken wird die Google Cloud Console in diesem Tab geöffnet.
Hinweis: Wenn Sie auf Google Cloud-Produkte und ‑Dienste zugreifen möchten, klicken Sie auf das Navigationsmenü oder geben Sie den Namen des Produkts oder Dienstes in das Feld Suchen ein.
Cloud Shell aktivieren
Cloud Shell ist eine virtuelle Maschine, auf der Entwicklertools installiert sind. Sie bietet ein Basisverzeichnis mit 5 GB nichtflüchtigem Speicher und läuft auf Google Cloud. Mit Cloud Shell erhalten Sie Befehlszeilenzugriff auf Ihre Google Cloud-Ressourcen.
-
Klicken Sie oben in der Google Cloud Console auf Cloud Shell aktivieren
.
-
Klicken Sie sich durch die folgenden Fenster:
- Fahren Sie mit dem Informationsfenster zu Cloud Shell fort.
- Autorisieren Sie Cloud Shell, Ihre Anmeldedaten für Google Cloud API-Aufrufe zu verwenden.
Wenn eine Verbindung besteht, sind Sie bereits authentifiziert und das Projekt ist auf Project_ID, eingestellt. Die Ausgabe enthält eine Zeile, in der die Project_ID für diese Sitzung angegeben ist:
Ihr Cloud-Projekt in dieser Sitzung ist festgelegt als {{{project_0.project_id | "PROJECT_ID"}}}
gcloud
ist das Befehlszeilentool für Google Cloud. Das Tool ist in Cloud Shell vorinstalliert und unterstützt die Tab-Vervollständigung.
- (Optional) Sie können den aktiven Kontonamen mit diesem Befehl auflisten:
gcloud auth list
- Klicken Sie auf Autorisieren.
Ausgabe:
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
Um das aktive Konto festzulegen, führen Sie diesen Befehl aus:
$ gcloud config set account `ACCOUNT`
- (Optional) Sie können die Projekt-ID mit diesem Befehl auflisten:
gcloud config list project
Ausgabe:
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
Hinweis: Die vollständige Dokumentation für gcloud
finden Sie in Google Cloud in der Übersicht zur gcloud CLI.
Aufgabe 1: Tabelle ansehen
BigQuery bietet eine Reihe von Beispieltabellen, an denen Sie Abfragen ausführen können. Im Rahmen dieses Labs führen Sie Abfragen an der Shakespeare
-Tabelle aus, die einen Eintrag für jedes Wort in jedem Werk von Shakespeare enthält.
Mit dem folgenden Befehl können Sie sich das Schema der Shakespeare-Tabelle im Beispiel-Dataset ansehen:
bq show bigquery-public-data:samples.shakespeare
Dieser Befehl führt Folgendes aus:
-
bq
ruft das BigQuery-Befehlszeilentool auf.
-
show
ist die Aktion.
- Dann listen Sie den Namen der Tabelle
project:public dataset.table
in BigQuery, die Sie sehen möchten.
Ausgabe:
Last modified Schema Total Rows Total Bytes Expiration Time Partitioning Clustered Fields Labels
----------------- ------------------------------------ ------------ ------------- ------------ ------------------- ------------------ --------
14 Mar 13:16:45 |- word: string (required) 164656 6432064
|- word_count: integer (required)
|- corpus: string (required)
|- corpus_date: integer (required)
Aufgabe 2: Hilfe anzeigen
Wenn Sie neben „help“ den Namen eines Befehls angeben, erhalten Sie Informationen zu diesem Befehl.
- Mit dem folgenden Aufruf von
bq help
werden beispielsweise Informationen zum Befehl query
abgefragt:
bq help query
- Wenn Sie eine Liste aller Befehle von
bq
sehen möchten, verwenden Sie einfach nur den Befehl bq help
.
Aufgabe 3: Abfrage ausführen
Führen Sie jetzt eine Abfrage aus, um zu ermitteln, wie häufig der Teilstring „raisin“ in den Werken von Shakespeare vorkommt.
- Abfragen führen Sie mit dem Befehl
bq query "[SQL_STATEMENT]"
aus:
- Führen Sie die folgende Standard-SQL-Abfrage in Cloud Shell aus, um die Wörter zu zählen, in denen der Teilstring „raisin“ in allen Werken von Shakespeare vorkommt:
bq query ‑‑use_legacy_sql=false \
'SELECT
word,
SUM(word_count) AS count
FROM
`bigquery-public-data`.samples.shakespeare
WHERE
word LIKE "%raisin%"
GROUP BY
word'
Dabei gilt:
-
‑‑use_legacy_sql=false
legt Standard-SQL als die Standardabfragesyntax fest.
Ausgabe:
Waiting on job_e19 ... (0s) Current status: DONE
+---------------+-------+
| word | count |
+---------------+-------+
| praising | 8 |
| Praising | 4 |
| raising | 5 |
| dispraising | 2 |
| dispraisingly | 1 |
| raisins | 1 |
In der Tabelle ist zu sehen, dass das Wort raisin als solches nicht vorkommt, die Buchstabenfolge in mehreren Werken Shakespeares aber schon.
Abgeschlossene Aufgabe testen
Klicken Sie auf Fortschritt prüfen. Wenn die Abfrage an einem öffentlichen Dataset ausgeführt wurde, erhalten Sie ein Testergebnis.
Abfrage ausführen (Dataset: samples, Tabelle: shakespeare, Teilstring: raisin)
Bei der Suche nach einem Wort, das in keinem der Werke von Shakespeare enthalten ist, werden keine Ergebnisse zurückgegeben.
- Beispiel: Die folgende Suche nach „huzzah“ gibt keine Ergebnisse zurück.
bq query ‑‑use_legacy_sql=false \
'SELECT
word
FROM
`bigquery-public-data`.samples.shakespeare
WHERE
word = "huzzah"'
Abgeschlossene Aufgabe testen
Klicken Sie auf Fortschritt prüfen. Wenn die Abfrage an einem öffentlichen Dataset ausgeführt wurde, erhalten Sie ein Testergebnis.
Abfrage ausführen (Dataset: samples, Tabelle: shakespeare, Teilstring: huzzah)
Aufgabe 4: Neue Tabelle erstellen
Erstellen Sie nun Ihre eigene Tabelle. Jede Tabelle wird in einem Dataset gespeichert. Ein Dataset ist eine Gruppe von Ressourcen, z. B. Tabellen oder Ansichten.
Neues Dataset erstellen
- Prüfen Sie mit dem Befehl
bq ls
, ob in Ihrem Projekt bereits Datasets vorhanden sind.
bq ls
Sie werden zurück zur Befehlszeile geleitet, da es in Ihrem Projekt noch keine Datasets gibt.
- Führen Sie den Befehl
bq ls
mit der Projekt-ID bigquery-public-data
gefolgt von einem Doppelpunkt (:) aus, um die Datasets in diesem bestimmten Projekt aufzulisten:
bq ls bigquery-public-data:
Ausgabe:
datasetId
-----------------------------
austin_311
austin_bikeshare
austin_crime
austin_incidents
austin_waste
baseball
bitcoin_blockchain
bls
census_bureau_construction
census_bureau_international
census_bureau_usa
census_utility
chicago_crime
...
Erstellen Sie jetzt ein Dataset. Der Name des Datasets kann bis zu 1.024 Zeichen umfassen und darf nur aus den Zeichen A–Z, a–z, 0–9 und Unterstrich bestehen. Er darf nicht mit einer Ziffer oder einem Unterstrich beginnen oder Leerzeichen enthalten.
- Erstellen Sie mit dem Befehl
bq mk
ein neues Dataset mit dem Namen babynames
in Ihrem Projekt:
bq mk babynames
Beispielausgabe:
Dataset 'qwiklabs-gcp-ba3466847fe3cec0:babynames' successfully created.
Abgeschlossene Aufgabe testen
Klicken Sie auf Fortschritt prüfen. Wenn das BigQuery-Dataset mit dem Namen „babynames“ erstellt wurde, erhalten Sie ein Testergebnis.
Neues Dataset erstellen (Name: babynames)
- Führen Sie den Befehl
bq ls
aus, um zu prüfen, ob das Dataset nun als Teil Ihres Projekts angezeigt wird:
bq ls
Beispielausgabe:
datasetId
-------------
babynames
Dataset hochladen
Bevor Sie die Tabelle erstellen können, müssen Sie das Dataset Ihrem Projekt hinzufügen. Die Datei mit benutzerdefinierten Daten, die Sie verwenden, umfasst ca. 7 MB und enthält beliebte Kindernamen, die von der US-amerikanischen Sozialversicherungsbehörde veröffentlicht wurden.
- Mit dem folgenden Befehl fügen Sie die ZIP-Datei mit Babynamen Ihrem Projekt hinzu. Dabei geben Sie die URL für die Datendatei an:
wget http://www.ssa.gov/OACT/babynames/names.zip
- Lassen Sie sich eine Dateiliste anzeigen:
ls
Sie sehen nun den Namen der Datei, die in das Projekt aufgenommen wurde.
- Jetzt entpacken Sie die Datei:
unzip names.zip
- Das sind ziemlich viele Textdateien. Lassen Sie sich noch einmal eine Dateiliste anzeigen:
ls
Der Befehl bq load
erstellt und aktualisiert eine Tabelle und lädt Daten in einem Schritt hoch.
Sie verwenden den Befehl bq load
dazu, die Quelldatei in eine neue Tabelle mit dem Namen „names2010“ im zuvor erstellten Dataset „babynames“ zu laden. Dies wird standardmäßig synchron ausgeführt und dauert einige Sekunden.
Führen Sie folgende bq load
-Argumente aus:
datasetID: babynames
tableID: names2010
source: yob2010.txt
schema: name:string,gender:string,count:integer
- Erstellen Sie die Tabelle:
bq load babynames.names2010 yob2010.txt name:string,gender:string,count:integer
Beispielausgabe:
Waiting on job_4f0c0878f6184119abfdae05f5194e65 ... (35s) Current status: DONE
Abgeschlossene Aufgabe testen
Klicken Sie auf Fortschritt prüfen. Wenn die Daten in die Dataset-Tabelle geladen wurden, erhalten Sie ein Testergebnis.
Daten in neue Tabelle laden
- Mit den Befehlen
bq ls
und babynames
prüfen Sie nun, ob die Tabelle im Dataset angezeigt wird:
bq ls babynames
Ausgabe:
tableId Type
----------- -------
names2010 TABLE
- Führen Sie den Befehl
bq show
mit Ihrer Tabelle dataset.table
aus, um das Schema zu sehen:
bq show babynames.names2010
Ausgabe:
Last modified Schema Total Rows Total Bytes Expiration Time Partitioning Clustered Fields Labels
----------------- ------------------- ------------ ------------- ----------------- ------------------- ------------------ --------
13 Aug 14:37:34 |- name: string 34073 654482 12 Oct 14:37:34
|- gender: string
|- count: integer
Hinweis: In BigQuery werden standardmäßig UTF‑8-codierte Daten erwartet. Wenn die Daten in der Codierung ISO-8859‑1 (oder Latin‑1) vorliegen und Probleme auftreten, verwenden Sie das Flag ‑E
, um die Daten in BigQuery als Latin‑1 zu kennzeichnen. Weitere Informationen zu Zeichencodierungen finden Sie im Leitfaden Einführung in das Laden von Daten.
Aufgabe 5: Abfragen ausführen
Jetzt sind Sie bereit, die Daten abzufragen und einige interessante Ergebnisse zu erhalten.
- Lassen Sie sich mit dem folgenden Befehl die fünf beliebtesten Mädchennamen anzeigen:
bq query "SELECT name,count FROM babynames.names2010 WHERE gender = 'F' ORDER BY count DESC LIMIT 5"
Ausgabe:
Waiting on job_58c0f5ca52764ef1902eba611b71c651 ... (0s) Current status: DONE
+----------+-------+
| name | count |
+----------+-------+
| Isabella | 22913 |
| Sophia | 20643 |
| Emma | 17345 |
| Olivia | 17028 |
| Ava | 15433 |
+----------+-------+
- Lassen Sie sich mit dem folgenden Befehl die fünf ungewöhnlichsten Jungennamen anzeigen:
bq query "SELECT name,count FROM babynames.names2010 WHERE gender = 'M' ORDER BY count ASC LIMIT 5"
Hinweis: Die Mindestanzahl beträgt 5, da die Quelldaten Namen, die weniger als 5 Mal vorkommen, nicht berücksichtigt.
Ausgabe:
Waiting on job_556ba2e5aad340a7b2818c3e3280b7a3 ... (1s) Current status: DONE
+----------+-------+
| name | count |
+----------+-------+
| Aaqib | 5 |
| Aaidan | 5 |
| Aadhavan | 5 |
| Aarian | 5 |
| Aamarion | 5 |
+----------+-------+
Abgeschlossene Aufgabe testen
Klicken Sie auf Fortschritt prüfen. Wenn die Abfrage an einem benutzerdefinierten Dataset ausgeführt wurde, erhalten Sie ein Testergebnis.
Abfragen an Dataset-Tabelle ausführen
Aufgabe 6: Wissen testen
Im Folgenden stellen wir Ihnen einige Multiple-Choice-Fragen, um Ihr bisher erworbenes Wissen zu testen und zu festigen. Beantworten Sie die Fragen so gut Sie können.
Aufgabe 7: Bereinigen
- Führen Sie den Befehl
bq rm
aus, um das Dataset babynames
mit dem Flag ‑r
zu entfernen und alle Tabellen im Dataset zu löschen:
bq rm ‑r babynames
- Bestätigen Sie den Löschbefehl durch Eingabe von
Y
.
Abgeschlossene Aufgabe testen
Klicken Sie auf Fortschritt prüfen. Wenn das Dataset „babynames“ entfernt wurde, erhalten Sie ein Testergebnis.
Dataset „babynames“ entfernen
Das wars! Sie haben das Lab erfolgreich abgeschlossen.
Sie können jetzt die Befehlszeile zum Abfragen öffentlicher Tabellen und Laden von Beispieldaten in BigQuery verwenden.
Weitere Informationen
Dieses Lab gehört zur Übungsreihe „Qwik Starts“. Die Labs geben Ihnen einen kleinen Vorgeschmack auf die vielen Funktionen von Google Cloud. Wählen Sie im Lab-Katalog unter „Qwik Starts“ einfach das nächste Lab aus, das Sie durchgehen möchten.
Google Cloud-Schulungen und -Zertifizierungen
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 2. Mai 2025 aktualisiert
Lab zuletzt am 2. Mai 2025 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.