In dieser Anleitung wird die Vorlage Pub/Sub-Thema zu BigQuery verwendet, um einen Dataflow-Vorlagenjob mithilfe der Google Cloud Console oder der Google Cloud CLI zu erstellen und auszuführen. Die Anleitung führt Sie durch ein Streaming-Pipeline-Beispiel, das JSON-codierte Nachrichten aus Pub/Sub liest, Nachrichtendaten mit dem Apache Beam SDK transformiert und die Ergebnisse in eine BigQuery-Tabelle schreibt.
Pipelines für Streaminganalyse und Datenintegration verwenden Pub/Sub zum Aufnehmen und Verteilen von Daten. Mit Pub/Sub können Sie Systeme für Ereignisersteller und -nutzer erstellen, die als Publisher und Abonnenten bezeichnet werden. Publisher senden Ereignisse asynchron an den Pub/Sub-Dienst und Pub/Sub liefert die Ereignisse dann an alle Dienste, die darauf reagieren müssen.
Dataflow ist ein vollständig verwalteter Dienst zum Transformieren und Anreichern von Daten im Streammodus (Echtzeit) und im Batchmodus. Es bietet eine vereinfachte Pipeline-Entwicklungsumgebung, die das Apache Beam SDK verwendet, um eingehende Daten zu transformieren und dann die transformierten Daten auszugeben.
Verwenden Sie ein Pub/Sub-BigQuery-Abo, wenn Sie Nachrichten direkt in BigQuery schreiben möchten, ohne Dataflow für die Datentransformation zu konfigurieren.
Lernziele
- Erstellen Sie ein Pub/Sub-Thema.
- Erstellen Sie ein BigQuery-Dataset mit einer Tabelle und einem Schema.
- Verwenden Sie eine von Google bereitgestellte Streamingvorlage, um Daten mit Dataflow aus Ihrem Pub/Sub-Thema zu BigQuery zu streamen.
- Erstellen Sie eine benutzerdefinierte Funktion (User-Defined Function, UDF), um die von Google bereitgestellte Streamingvorlage zu erweitern.
Kosten
In dieser Anleitung werden die folgenden kostenpflichtigen Komponenten von Google Cloud verwendet:
- Dataflow
- Pub/Sub
- Cloud Storage
- Cloud Scheduler
- BigQuery
Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung vornehmen.
Nach Abschluss dieser Anleitung können Sie weitere Kosten vermeiden, indem Sie die erstellten Ressourcen löschen. Weitere Informationen finden Sie unter Bereinigen.
Hinweis
In diesem Abschnitt erfahren Sie, wie Sie ein Projekt auswählen, APIs aktivieren und Ihrem Nutzerkonto und dem Worker-Dienstkonto die entsprechenden Rollen zuweisen. Weisen Sie in einer Produktionsumgebung nicht die Inhaberrolle zu. Verwenden Sie stattdessen die entsprechenden Dataflow-spezifischen Berechtigungen und Rollen.
- Melden Sie sich bei Ihrem Google Cloud-Konto an. Wenn Sie mit Google Cloud noch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.
-
Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
-
Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.
-
Dataflow, Compute Engine, Logging, Cloud Storage, Cloud Storage JSON, BigQuery, Pub/Sub, Resource Manager, and Cloud Scheduler APIs aktivieren.
-
Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
-
Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.
-
Dataflow, Compute Engine, Logging, Cloud Storage, Cloud Storage JSON, BigQuery, Pub/Sub, Resource Manager, and Cloud Scheduler APIs aktivieren.
Ihr Nutzerkonto muss die Rolle Dienstkontonutzer haben, um die Schritte in dieser Anleitung ausführen zu können. Das Compute Engine-Standarddienstkonto muss die folgenden Rollen haben: Dataflow-Worker, Dataflow Admin, Pub/Sub-Bearbeiter, Storage-Objekt-Administrator und BigQuery-Dateneditor. So fügen Sie die erforderlichen Rollen in der Google Cloud Console hinzu:
- Öffnen Sie in der Google Cloud Console die Seite IAM.
Zu IAM - Wählen Sie Ihr Projekt aus.
- Klicken Sie in der Zeile mit Ihrem Nutzerkonto auf Hauptkonto bearbeiten und dann auf Weitere Rolle hinzufügen.
- Wählen Sie in der Drop-down-Liste die Rolle Dienstkontonutzer aus.
- Klicken Sie in der Zeile mit dem Compute Engine-Standarddienstkonto auf Hauptkonto bearbeiten und dann auf Weitere Rolle hinzufügen.
- Wählen Sie aus der Drop-down-Liste die Rolle Dataflow-Worker aus.
- Wiederholen Sie den Vorgang für die Rollen Dataflow-Administrator, Pub/Sub-Bearbeiter, Storage-Objekt-Administrator und BigQuery-Dateneditor und klicken Sie dann auf Speichern.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter IAM-Rolle über die Konsole zuweisen.
- Öffnen Sie in der Google Cloud Console die Seite IAM.
- Wenn Sie die Google Cloud CLI verwenden, um diese Anleitung abzuschließen, installieren und initialisieren Sie die Google Cloud CLI. Wenn Sie diese Anleitung mit der Google Cloud Console ausführen, überspringen Sie diesen Schritt.
Wenn Sie diese Anleitung über die Google Cloud CLI ausführen, erstellen Sie Anmeldedaten für Ihr Google-Konto:
gcloud auth application-default login
Beispielquelle und -senke erstellen
In diesem Abschnitt wird Folgendes erstellt:
- Streaming-Datenquelle mit Pub/Sub
- Dataset, um Daten in BigQuery zu laden
Cloud Storage-Bucket erstellen
Erstellen Sie zuerst einen Cloud Storage-Bucket mit der Cloud Console oder der Google Cloud CLI. Dieser Bucket wird von der Dataflow-Pipeline als temporärer Speicherort verwendet.
Console
Wechseln Sie in der Google Cloud Console zum Cloud Storage-Browser.
Klicken Sie auf Bucket erstellen.
Geben Sie auf der Seite Bucket erstellen bei Bucket benennen einen Namen ein, der die Anforderungen für Bucket-Namen erfüllt. Cloud Storage-Bucket-Namen müssen global eindeutig sein. Wählen Sie nicht die anderen Optionen aus.
Klicken Sie auf Erstellen.
gcloud
Führen Sie den Befehl gsutil mb
aus:
gsutil mb gs://BUCKET_NAME
Ersetzen Sie BUCKET_NAME
durch einen Namen für den Cloud Storage-Bucket, der den Anforderungen für Bucket-Namen entspricht.
Cloud Storage-Bucket-Namen müssen global eindeutig sein.
Pub/Sub-Thema und -Abo erstellen
Erstellen Sie ein Pub/Sub-Thema und dann ein Abo für dieses Thema.
Console
So erstellen Sie ein Thema:
Öffnen Sie in der Google Cloud Console die Pub/Sub-Seite Themen.
Klicken Sie auf Thema erstellen.
Geben Sie im Feld Themen-ID eine ID für das Thema ein. Weitere Informationen zum Benennen eines Themas finden Sie unter Richtlinien für die Benennung eines Themas oder eines Abos.
Behalten Sie die Option Standardabo hinzufügen bei. Wählen Sie nicht die anderen Optionen aus.
Klicken Sie auf Thema erstellen.
gcloud CLI
Führen Sie den Befehl gcloud pubsub topics create
aus, um ein Thema zu erstellen. Informationen zum Benennen eines Abos finden Sie unter Richtlinien für die Benennung eines Themas oder Abos.
gcloud pubsub topics create TOPIC_ID
Ersetzen Sie TOPIC_ID
durch einen Namen für Ihr Pub/Sub-Thema.
Führen Sie den Befehl gcloud pubsub subscriptions create
aus, um ein Abo für Ihr Thema zu erstellen:
gcloud pubsub subscriptions create --topic TOPIC_ID SUBSCRIPTION_ID
Ersetzen Sie SUBSCRIPTION_ID
durch einen Namen für Ihr Pub/Sub-Abo.
Cloud Scheduler-Jobs erstellen und ausführen
Erstellen und führen Sie zwei Cloud Scheduler-Jobs aus: einen, der "positive Bewertungen" veröffentlicht, und einen zweiten, der "negative Bewertungen" in Ihrem Pub/Sub-Thema veröffentlicht.
Console
Erstellen Sie einen Cloud Scheduler-Job für positive Bewertungen.
Gehen Sie in der Konsole zur Seite Cloud Scheduler:
Klicken Sie auf die Schaltfläche Job erstellen.
Geben Sie den Namen
positive-ratings-publisher
ein.Wählen Sie eine Region für die Ausführung des Jobs aus. Wählen Sie eine Dataflow-Region in der Nähe des Standorts, an dem die Befehle in dieser Anleitung ausgeführt werden. Der Wert der Variablen
REGION
muss ein gültiger Regionsname sein. Weitere Informationen zu Regionen und Standorten finden Sie unter Dataflow-Standorte.Geben Sie die Häufigkeit der Ausführung des Jobs im Format unix-cron an:
* * * * *
.Weitere Informationen finden Sie unter Zeitpläne für Cronjobs konfigurieren.
Wählen Sie Ihre Zeitzone unter "Timezone" aus.
Klicken Sie auf Weiter.
Wählen Sie in der Drop-down-Liste Ziel die Option Pub/Sub aus.
Wählen Sie den Namen Ihres Themas aus der Drop-down-Liste aus.
Fügen Sie den folgenden Nachrichtenstring hinzu, der an Ihr Ziel gesendet werden soll:
{"url": "https://beam.apache.org/", "review": "positive"}
Klicken Sie auf Erstellen.
Sie haben jetzt einen Cronjob, der jede Minute eine Nachricht mit einer positiven Bewertung an Ihr Pub/Sub-Thema sendet. Ihre Cloud-Funktion hat dieses Thema abonniert.
Erstellen Sie einen Cloud Scheduler-Job für negative Bewertungen.
Klicken Sie in der Console auf der Seite Cloud Scheduler auf die Schaltfläche Job erstellen.
Geben Sie den Namen
negative-ratings-publisher
ein.Wählen Sie eine Region für die Ausführung des Jobs aus.
Geben Sie die Häufigkeit der Ausführung des Jobs im Format unix-cron an:
*/2 * * * *
.Weitere Informationen finden Sie unter Zeitpläne für Cronjobs konfigurieren.
Wählen Sie Ihre Zeitzone unter "Timezone" aus.
Klicken Sie auf Weiter.
Wählen Sie in der Drop-down-Liste Ziel die Option Pub/Sub aus.
Wählen Sie den Namen Ihres Themas aus der Drop-down-Liste aus.
Fügen Sie den folgenden Nachrichtenstring hinzu, der an Ihr Ziel gesendet werden soll:
{"url": "https://beam.apache.org/", "review": "negative"}
Klicken Sie auf Erstellen.
Sie haben jetzt einen Cronjob, der alle zwei Minuten eine Nachricht mit einer negativen Bewertung an Ihr Pub/Sub-Thema sendet. Ihre Cloud-Funktion hat dieses Thema abonniert.
gcloud
Verwenden Sie den Befehl
gcloud scheduler jobs create
, um einen Cloud Scheduler-Job für diese Anleitung zu erstellen. Mit diesem Schritt wird ein Publisher für "positive Bewertungen" erstellt, der eine Nachricht pro Minute veröffentlicht.gcloud scheduler jobs create pubsub positive-ratings-publisher \ --schedule="* * * * *" \ --location=DATAFLOW_REGION \ --topic="TOPIC_ID" \ --message-body='{"url": "https://beam.apache.org/", "review": "positive"}'
Ersetzen Sie
DATAFLOW_REGION
durch den regionalen Endpunkt für die Bereitstellung Ihres Dataflow-Jobs. Wählen Sie eine Dataflow-Region in der Nähe des Standorts, an dem die Befehle in dieser Anleitung ausgeführt werden. Der Wert der VariablenREGION
muss ein gültiger Regionsname sein. Weitere Informationen zu Regionen und Standorten finden Sie unter Dataflow-Standorte.Verwenden Sie den Befehl
gcloud scheduler jobs run
, um den Cloud Scheduler-Job zu starten.gcloud scheduler jobs run --location=DATAFLOW_REGION positive-ratings-publisher
Erstellen und führen Sie einen weiteren ähnlichen Publisher für "negative Bewertungen" aus, der alle zwei Minuten eine Nachricht veröffentlicht. Mit diesem Schritt wird ein Publisher für "negative Bewertungen" erstellt, der alle zwei Minuten eine Nachricht veröffentlicht.
gcloud scheduler jobs create pubsub negative-ratings-publisher \ --schedule="*/2 * * * *" \ --location=DATAFLOW_REGION \ --topic="TOPIC_ID" \ --message-body='{"url": "https://beam.apache.org/", "review": "negative"}'
Starten Sie den zweiten Cloud Scheduler-Job.
gcloud scheduler jobs run --location=DATAFLOW_REGION negative-ratings-publisher
BigQuery-Dataset erstellen
Erstellen Sie ein BigQuery-Dataset und eine Tabelle mit dem entsprechenden Schema für Ihr Pub/Sub-Thema.
Console
BigQuery-Dataset erstellen
Öffnen Sie in der Google Cloud Console die Seite "BigQuery".
Wählen Sie im Bereich Explorer das Projekt aus, in dem Sie das Dataset erstellen möchten.
Maximieren Sie die Option
Aktionen und klicken Sie auf Dataset erstellen.Führen Sie auf der Seite Dataset erstellen die folgenden Schritte aus:
- Geben Sie unter Dataset-ID
tutorial_dataset
ein. Unter Speicherort der Daten können Sie einen geografischen Standort für das Dataset auswählen. Nach der Erstellung des Datasets kann der Standort nicht mehr geändert werden.
Wählen Sie nicht die anderen Optionen aus.
Klicken Sie auf Dataset erstellen.
- Geben Sie unter Dataset-ID
Erstellen Sie eine BigQuery-Tabelle mit einem Schema.
Maximieren Sie im Bereich Explorer Ihr Projekt und wählen Sie das Dataset
tutorial_dataset
aus.Maximieren Sie die Option
Aktionen und klicken Sie auf Öffnen.Klicken Sie im Detailfeld auf Tabelle erstellen.
Wählen Sie auf der Seite Create table (Tabelle erstellen) im Abschnitt Source (Quelle) die Option Empty table (Leere Tabelle) aus.
Gehen Sie auf der Seite Tabelle erstellen im Abschnitt Ziel folgendermaßen vor:
- Prüfen Sie, ob für Dataset-Name der Wert
tutorial_dataset
festgelegt ist. - Geben Sie im Feld Tabellenname
tutorial
ein. - Achten Sie darauf, dass der Tabellentyp auf Native Tabelle eingestellt ist.
- Prüfen Sie, ob für Dataset-Name der Wert
Geben Sie im Abschnitt Schema die Schemadefinition ein. Klicken Sie auf Als Text bearbeiten und geben Sie das folgende Tabellenschema als JSON-Array ein.
[ { "mode": "NULLABLE", "name": "url", "type": "STRING" }, { "mode": "NULLABLE", "name": "review", "type": "STRING" } ]
Behalten Sie für Partitions- und Clustereinstellungen den Standardwert
No partitioning
bei.Übernehmen Sie im Abschnitt Erweiterte Optionen ebenfalls den Standardwert für Verschlüsselung, und zwar
Google-managed key
. Dataflow verschlüsselt standardmäßig ruhende Kundendaten.Klicken Sie auf Tabelle erstellen.
gcloud
Erstellen Sie das Dataset mit dem Befehl bq mk
.
bq --location=DATAFLOW_REGION mk \
PROJECT_ID:tutorial_dataset
Ersetzen Sie dabei PROJECT_ID
durch die Projekt-ID Ihres Zielprojekts.
Verwenden Sie den Befehl bq mk
mit dem Flag --table
oder -t
, um eine Tabelle in Ihrem Dataset zu erstellen.
bq mk \
--table \
PROJECT_ID:tutorial_dataset.tutorial \
url:STRING,review:STRING
Benutzerdefinierte Funktion (UDF) erstellen
Sie können optional eine JavaScript-UDF erstellen, um die von Google bereitgestellte Vorlage "Pub/Sub-Thema für BigQuery" zu erweitern. Mit UDFs können Sie Datentransformationen definieren, die in der Vorlage nicht vorhanden sind, und sie in die Vorlage einfügen.
Die folgende UDF validiert die URLs der eingehenden Bewertungen. Bewertungen ohne URLs oder falsche URLs werden an eine andere Ausgabetabelle mit dem Suffix _error_records
weitergeleitet, auch als Tabelle für unzustellbare Nachrichten bezeichnet, im selben Projekt und Dataset.
JavaScript
Speichern Sie dieses JavaScript-Snippet in dem zuvor erstellten Cloud Storage-Bucket.
Pipeline ausführen
Führen Sie eine Streaming-Pipeline mit der von Google bereitgestellten Vorlage Pub/Sub-Thema zu BigQuery aus. Die Pipeline erhält eingehende Daten aus dem Pub/Sub-Thema und gibt die Daten in Ihr BigQuery-Dataset aus.
Console
Rufen Sie in der Google Cloud Console die Dataflow-Seite Jobs auf.
Klicken Sie auf Job aus Vorlage erstellen.
Geben Sie einen Jobnamen für Ihren Dataflow-Job ein.
Wählen Sie für die Dataflow-Vorlage die Vorlage Pub/Sub-Thema zu BigQuery aus.
Geben Sie unter Pub/Sub-Eingabethema Folgendes ein:
projects/PROJECT_ID/topics/TOPIC_ID
Ersetzen Sie
PROJECT_ID
durch die Projekt-ID des Projekts, in dem Sie das BigQuery-Dataset erstellt haben, undTOPIC_ID
durch den Namen Ihres Pub/Sub-Themas.Geben Sie für BigQuery-Ausgabetabelle Folgendes ein:
PROJECT_ID:tutorial_dataset.tutorial
Geben Sie unter Temporärer Speicherort Folgendes ein:
gs://BUCKET_NAME/temp/
Ersetzen Sie
BUCKET_NAME
durch den Namen Ihres Cloud Storage-Buckets. Der Ordnertemp
speichert temporäre Dateien, z. B. den bereitgestellten Pipelinejob.Klicken Sie optional auf Optionale Parameter anzeigen, um eine UDF für den Job einzubeziehen.
Geben Sie für JavaScript-UDF-Pfad in Cloud Storage Folgendes ein:
gs://BUCKET_NAME/dataflow_udf_transform.js
Geben Sie unter JavaScript-UDF-Name Folgendes ein:
process
Klicken Sie auf Job ausführen.
Wenn Sie prüfen möchten, ob die Vorlage Nachrichten an eine Tabelle für unzustellbare Nachrichten weiterleiten kann, veröffentlichen Sie einige Bewertungen ohne URLs oder falsche URLs.
Zur Seite Pub/Sub-Themen
Klicken Sie auf Ihren TOPIC_ID.
Wechseln Sie zum Abschnitt Nachrichten.
Klicken Sie auf Nachricht veröffentlichen.
Geben Sie einige Bewertungen ohne URLs oder falsche URLs in Nachrichtentext ein. Beispiel:
{"url": "https://beam.apache.org/documentation/sdks/java/", "review": "positive"}
Klicken Sie auf Veröffentlichen.
gcloud
Führen Sie die Vorlage in Ihrer Shell oder Ihrem Terminal mit dem Befehl gcloud dataflow jobs run
aus.
gcloud dataflow jobs run JOB_NAME \
--gcs-location gs://dataflow-templates/latest/PubSub_to_BigQuery \
--region DATAFLOW_REGION \
--staging-location gs://BUCKET_NAME/temp \
--parameters \
inputTopic=projects/PROJECT_ID/topics/TOPIC_ID,\
outputTableSpec=PROJECT_ID:tutorial_dataset.tutorial
Ersetzen Sie JOB_NAME
durch einen eindeutigen Namen Ihrer Wahl.
Optional können Sie die Vorlage mit der UDF ausführen:
gcloud dataflow jobs run JOB_NAME \
--gcs-location gs://dataflow-templates/latest/PubSub_to_BigQuery \
--region DATAFLOW_REGION \
--staging-location gs://BUCKET_NAME/temp \
--parameters \
inputTopic=projects/PROJECT_ID/topics/TOPIC_ID,\
outputTableSpec=PROJECT_ID:tutorial_dataset.tutorial,\
javascriptTextTransformGcsPath=gs://BUCKET_NAME/dataflow_udf_transform.js,\
javascriptTextTransformFunctionName=process
Wenn Sie prüfen möchten, ob die Vorlage Nachrichten an eine Tabelle für unzustellbare Nachrichten weiterleiten kann, veröffentlichen Sie einige Bewertungen ohne URLs oder falsche URLs. Beispiel:
gcloud pubsub topics publish TOPIC_ID \
--message='{"url": "https://beam.apache.org/documentation/sdks/java/", "review": "positive"}'
Ergebnisse ansehen
Sehen Sie sich die Daten an, die in Ihren BigQuery-Tabellen geschrieben wurden.
Console
Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Zur Seite „BigQuery“Führen Sie im Abfrageeditor folgende Abfrage aus:
SELECT * FROM `PROJECT_ID.tutorial_dataset.tutorial` LIMIT 1000
Es kann bis zu einer Minute dauern, bis Daten in der Tabelle angezeigt werden.
Die Abfrage gibt Zeilen zurück, die in den letzten 24 Stunden zu Ihrer Tabelle hinzugefügt wurden. Sie können Abfragen auch mit Standard-SQL ausführen.
Wenn Sie davon ausgehen, dass einige Fehlerdatensätze in Ihre Dead-Letter-Tabelle geschrieben werden, verwenden Sie in der Abfrage den Tabellennamen
tutorial_error_records
. Beispiel:SELECT * FROM `PROJECT_ID.tutorial_dataset.tutorial_error_records` LIMIT 1000
gcloud
Prüfen Sie die Ergebnisse in BigQuery mit der folgenden Abfrage:
bq query --use_legacy_sql=false 'SELECT * FROM `'"PROJECT_ID.tutorial_dataset.tutorial"'`'
Während diese Pipeline ausgeführt wird, können Sie jede Minute neue Zeilen an die BigQuery-Tabelle anhängen.
Wenn Sie davon ausgehen, dass einige Fehlerdatensätze in Ihre Dead-Letter-Tabelle geschrieben werden, verwenden Sie in der Abfrage den Tabellennamen tutorial_error_records
. Beispiel:
SELECT * FROM `PROJECT_ID.tutorial_dataset.tutorial_error_records`
LIMIT 1000
Bereinigen
Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, löschen Sie entweder das Projekt, das die Ressourcen enthält, oder Sie behalten das Projekt und löschen die einzelnen Ressourcen.
Projekt löschen
Am einfachsten können Sie weitere Kosten vermeiden, wenn Sie das Google Cloud-Projekt löschen, das Sie für die Anleitung erstellt haben.
- Wechseln Sie in der Google Cloud Console zur Seite Ressourcen verwalten.
- Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie dann auf Löschen.
- Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Shut down (Beenden), um das Projekt zu löschen.
Einzelne Ressourcen löschen
Dataflow-Pipeline anhalten
Console
Rufen Sie in der Google Cloud Console die Dataflow-Seite Jobs auf.
Klicken Sie auf den Job, den Sie beenden möchten.
Zum Beeinden eines Jobs muss der Status des Jobs Wird ausgeführt sein.
Klicken Sie auf der Seite mit den Jobdetails auf Beenden.
Klicken Sie auf Abbrechen.
Klicken Sie auf Job anhalten, um die Auswahl zu bestätigen.
gcloud
Verwenden Sie den Befehl gcloud dataflow jobs
, um Ihren Dataflow-Job abzubrechen.
gcloud dataflow jobs list \
--filter 'NAME=JOB_NAME AND STATE=Running' \
--format 'value(JOB_ID)' \
--region "DATAFLOW_REGION" \
| xargs gcloud dataflow jobs cancel --region "DATAFLOW_REGION"
Google Cloud-Projektressourcen bereinigen
Console
- Löschen Sie die Cloud Scheduler-Jobs.
- Rufen Sie in der Google Cloud Console die Seite Cloud Scheduler auf.
Zur Seite "Scheduler" - Wählen Sie Ihre Jobs aus.
- Klicken Sie oben auf der Seite auf Löschen und bestätigen Sie den Löschvorgang.
- Rufen Sie in der Google Cloud Console die Seite Cloud Scheduler auf.
- Löschen Sie das Pub/Sub-Thema und -Abo.
- Rufen Sie in der Google Cloud Console die Seite Pub/Sub-Themen auf.
Zur Seite "Pub/Sub-Themen" - Wählen Sie das von Ihnen erstellte Thema aus.
- Klicken Sie auf Löschen, um das Thema endgültig zu löschen.
- Rufen Sie in der Google Cloud Console die Seite Pub/Sub-Abos auf.
- Wählen Sie das mit Ihrem Thema erstellte Abo aus.
- Klicken Sie auf Löschen, um das Abo endgültig zu löschen.
- Rufen Sie in der Google Cloud Console die Seite Pub/Sub-Themen auf.
- Löschen Sie die BigQuery-Tabelle und das Dataset.
- Öffnen Sie in der Google Cloud Console die Seite BigQuery.
Zu „BigQuery“ - Maximieren Sie im Bereich Explorer Ihr Projekt.
- Klicken Sie neben dem Dataset, das Sie löschen möchten, auf Aktionen ansehen und dann auf Löschen.
- Öffnen Sie in der Google Cloud Console die Seite BigQuery.
- Löschen Sie den Cloud Storage-Bucket.
- Wechseln Sie in der Google Cloud Console zum Cloud Storage-Browser.
Zur Seite „Cloud Storage“ - Wählen Sie den Bucket aus, den Sie löschen möchten, klicken Sie auf Löschen und folgen Sie der Anleitung.
- Wechseln Sie in der Google Cloud Console zum Cloud Storage-Browser.
gcloud
Verwenden Sie den Befehl
gcloud scheduler jobs delete
, um die Cloud Scheduler-Jobs zu löschen.gcloud scheduler jobs delete negative-ratings-publisher --location=DATAFLOW_REGION
gcloud scheduler jobs delete positive-ratings-publisher --location=DATAFLOW_REGION
Verwenden Sie die Befehle
gcloud pubsub subscriptions delete
undgcloud pubsub topics delete
, um das Pub/Sub-Abo und -Thema zu löschen.gcloud pubsub subscriptions delete SUBSCRIPTION_ID gcloud pubsub topics delete TOPIC_ID
Verwenden Sie zum Löschen der BigQuery-Tabelle den Befehl
bq rm
.bq rm -f -t PROJECT_ID:tutorial_dataset.tutorial
Löschen Sie das BigQuery-Dataset. Das Dataset allein verursacht keine Gebühren.
Verwenden Sie den Befehl
gsutil rm
, um den Cloud Storage-Bucket zu löschen. Für den Bucket fallen keine Gebühren an.
Anmeldedaten entfernen
-
Optional: Widerrufen Sie die von Ihnen erstellten Anmeldedaten für die Authentifizierung und löschen Sie die lokale Datei mit den Anmeldedaten:
gcloud auth application-default revoke
-
Optional: Widerrufen Sie Anmeldedaten von der gcloud-CLI.
gcloud auth revoke
Wenn Sie Ihr Projekt beibehalten, widerrufen Sie die Rollen, die Sie dem Compute Engine-Standarddienstkonto zugewiesen haben.
Öffnen Sie in der Google Cloud Console die Seite IAM.
IAM aufrufen- Wählen Sie ein Projekt, einen Ordner oder eine Organisation aus.
- Suchen Sie die Zeile mit dem Hauptkonto, dessen Zugriff Sie widerrufen möchten. Klicken Sie in dieser Zeile auf Hauptkonto bearbeiten.
- Klicken Sie für alle Rollen, die entzogen werden sollen, auf Löschen und dann auf Speichern.
roles/dataflow.admin
roles/dataflow.worker
roles/bigquery.dataEditor
roles/pubsub.editor
roles/storage.objectAdmin
Console
gcloud
Führen Sie den folgenden Befehl für jede der folgenden IAM-Rollen einmal aus:
gcloud projects remove-iam-policy-binding PROJECT_ID \ --member=serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com \ --role=ROLE
Nächste Schritte
- Dataflow-Vorlage mit UDFs erweitern
- Weitere Informationen zur Verwendung von Dataflow-Vorlagen
- Alle von Google bereitgestellten Vorlagen
- Verwendung von Pub/Sub zum Erstellen und Verwenden von Themen sowie zum Erstellen und Verwenden von Abos
- Cloud Scheduler zum Planen und Ausführen von Cronjobs verwenden
- Datasets mit BigQuery erstellen
- Referenzarchitekturen, Diagramme und Best Practices zu Google Cloud kennenlernen. Weitere Informationen zu Cloud Architecture Center