Questo tutorial utilizza il modello Abbonamento Pub/Sub a BigQuery per creare ed eseguire un job Modello Dataflow utilizzando la console Google Cloud o la CLI Google Cloud. Il tutorial ti guiderà attraverso un esempio di pipeline in modalità flusso che legge con codifica JSON messaggi da Pub/Sub, utilizza una funzione definita dall'utente per estendere il modello di flussi di dati fornito da Google, trasforma i dati dei messaggi con l'SDK Apache Beam e scrive i risultati in un Tabella BigQuery.
Analisi dei flussi di dati e integrazione dei dati le pipeline usano Pub/Sub per importare e distribuire i dati. Pub/Sub ti consente di creare sistemi di produttori e consumer di eventi, denominati publisher e subscriber. I publisher inviano eventi al servizio Pub/Sub in modo asincrono e Pub/Sub li consegna a tutti i servizi che devono reagire.
Dataflow è un servizio completamente gestito per la trasformazione e l'arricchimento dei dati in modalità flusso (in tempo reale) e batch. Fornisce una pipeline semplificata che utilizza l'SDK Apache Beam per trasformare i dati in entrata e poi restituire i dati trasformati.
Il vantaggio di questo flusso di lavoro è che puoi utilizzare le UDF per trasformare i dati dei messaggi prima che vengano scritti in BigQuery. Un'altra opzione è utilizzare una sottoscrizione BigQuery, che scrive i messaggi Pub/Sub direttamente in BigQuery, senza utilizzare Dataflow. Questa opzione supporta solo la consegna "at-least-once"; non supporta l'elaborazione "exactly-once".
Obiettivi
- Creare un argomento Pub/Sub.
- Creare un set di dati BigQuery con una tabella e uno schema.
- Utilizza un modello di streaming fornito da Google per creare un flusso di dati dalla tua sottoscrizione Pub/Sub a BigQuery utilizzando Dataflow.
- Crea una funzione definita dall'utente (UDF) per estendere il modello di streaming fornito da Google.
Costi
In questo documento utilizzi i seguenti componenti fatturabili di Google Cloud:
- Dataflow
- Pub/Sub
- Cloud Storage
- Cloud Scheduler
- BigQuery
Per generare una stima dei costi basata sull'utilizzo previsto,
utilizza il Calcolatore prezzi.
Una volta completate le attività descritte in questo documento, puoi evitare la fatturazione continua eliminando le risorse che hai creato. Per ulteriori informazioni, consulta la pagina Pulizia.
Prima di iniziare
Questa sezione spiega come selezionare un progetto, attivare le API e concedere i ruoli appropriati al tuo account utente e all'account di servizio di lavoro.
Console
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine, Dataflow, Cloud Logging, BigQuery, Pub/Sub, Cloud Storage, Resource Manager, and Cloud Scheduler APIs.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine, Dataflow, Cloud Logging, BigQuery, Pub/Sub, Cloud Storage, Resource Manager, and Cloud Scheduler APIs.
Per completare i passaggi di questo tutorial, il tuo account utente deve disporre del ruolo Utente account di servizio. L'account di servizio predefinito di Compute Engine deve avere i seguenti ruoli: Worker Dataflow, Amministratore Dataflow, Editor Pub/Sub, Amministratore oggetti archiviazione ed Editor dati BigQuery. Per aggiungere i ruoli richiesti nella console Google Cloud:
Nella console Google Cloud, vai alla pagina IAM.
Vai a IAM- Seleziona il progetto.
- Nella riga contenente il tuo account utente, fai clic su Modifica entità, e fai clic su Aggiungi un altro ruolo.
- Nell'elenco a discesa, seleziona il ruolo Utente account di servizio.
- Nella riga contenente l'account di servizio predefinito di Compute Engine, fai clic su Modifica entità e poi su Aggiungi un altro ruolo.
- Nell'elenco a discesa, seleziona il ruolo Worker Dataflow.
Ripeti la procedura per l'amministratore Dataflow, l'editor Pub/Sub. i ruoli Amministratore oggetti Storage e Editor dati BigQuery, e fai clic su Salva.
Per ulteriori informazioni quando si assegnano i ruoli, vedi Concedere un ruolo IAM utilizzando la console.
gcloud
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine, Dataflow, Cloud Logging, BigQuery, Pub/Sub, Cloud Storage, Resource Manager, and Cloud Scheduler APIs:
gcloud services enable compute.googleapis.com
dataflow.googleapis.com logging.googleapis.com bigquery.googleapis.com pubsub.googleapis.com storage.googleapis.com cloudresourcemanager.googleapis.com cloudscheduler.googleapis.com -
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
-
Grant roles to your user account. Run the following command once for each of the following IAM roles:
roles/iam.serviceAccountUser
gcloud projects add-iam-policy-binding PROJECT_ID --member="USER_IDENTIFIER" --role=ROLE
- Replace
PROJECT_ID
with your project ID. -
Replace
USER_IDENTIFIER
with the identifier for your user account. For example,user:myemail@example.com
. - Replace
ROLE
with each individual role.
- Replace
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Compute Engine, Dataflow, Cloud Logging, BigQuery, Pub/Sub, Cloud Storage, Resource Manager, and Cloud Scheduler APIs:
gcloud services enable compute.googleapis.com
dataflow.googleapis.com logging.googleapis.com bigquery.googleapis.com pubsub.googleapis.com storage.googleapis.com cloudresourcemanager.googleapis.com cloudscheduler.googleapis.com -
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
-
Grant roles to your user account. Run the following command once for each of the following IAM roles:
roles/iam.serviceAccountUser
gcloud projects add-iam-policy-binding PROJECT_ID --member="USER_IDENTIFIER" --role=ROLE
- Replace
PROJECT_ID
with your project ID. -
Replace
USER_IDENTIFIER
with the identifier for your user account. For example,user:myemail@example.com
. - Replace
ROLE
with each individual role.
- Replace
-
Concedi ruoli al tuo account di servizio predefinito Compute Engine. Esegui il seguente comando una volta per ciascuno dei seguenti ruoli IAM:
roles/dataflow.admin
roles/dataflow.worker
roles/storage.admin
roles/pubsub.editor
roles/bigquery.dataEditor
gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com" --role=SERVICE_ACCOUNT_ROLE
Sostituisci quanto segue:
PROJECT_ID
: il tuo ID progetto.PROJECT_NUMBER
: il numero del progetto. Per trovare il numero del progetto, utilizza il comandogcloud projects describe
.SERVICE_ACCOUNT_ROLE
: ogni singolo ruolo.
Crea l'origine e il sink di esempio
Questa sezione spiega come creare quanto segue:
- Un'origine di dati in modalità flusso utilizzando Pub/Sub
- Un set di dati per caricare i dati in BigQuery
Crea un bucket Cloud Storage
Inizia creando un bucket Cloud Storage utilizzando la console Google Cloud oppure Google Cloud CLI. La pipeline Dataflow utilizza questo bucket come posizione di archiviazione temporanea.
Console
Nella console Google Cloud, vai alla pagina Bucket in Cloud Storage.
Fai clic su Crea bucket.
Nella pagina Crea un bucket, in Assegna un nome al bucket, inserisci un nome che soddisfi i requisiti per i nomi dei bucket. I nomi dei bucket Cloud Storage devono essere univoci a livello globale. Non selezionare le altre opzioni.
Fai clic su Crea.
gcloud
Utilizza la
Comando gcloud storage buckets create
:
gcloud storage buckets create gs://BUCKET_NAME
Sostituisci BUCKET_NAME
con un nome per il bucket Cloud Storage
che soddisfi i requisiti per la denominazione dei bucket.
I nomi dei bucket Cloud Storage devono essere univoci a livello globale.
Crea un argomento e una sottoscrizione Pub/Sub
Crea un argomento Pub/Sub e poi una sottoscrizione a quell'argomento.
Console
Per creare un argomento, completa i seguenti passaggi.
Nella console Google Cloud, vai alla pagina Argomenti di Pub/Sub.
Fai clic su Crea argomento.
Nel campo ID argomento, inserisci un ID per l'argomento. Per informazioni su come assegnare un nome a un argomento, consulta Linee guida per denominare un argomento o una sottoscrizione.
Mantieni l'opzione Aggiungi un abbonamento predefinito. Non selezionare le altre opzioni.
Fai clic su Crea argomento.
gcloud
Per creare un argomento, esegui
gcloud pubsub topics create
. Per informazioni su come assegnare un nome a un abbonamento, consulta
Linee guida per assegnare un nome a un argomento o a un abbonamento.
gcloud pubsub topics create TOPIC_ID
Sostituisci TOPIC_ID
con un nome per l'argomento Pub/Sub.
Per creare una sottoscrizione all'argomento, esegui
gcloud pubsub subscriptions create
:
gcloud pubsub subscriptions create --topic TOPIC_ID SUBSCRIPTION_ID
Sostituisci SUBSCRIPTION_ID
con un nome per la tua sottoscrizione Pub/Sub.
Crea ed esegui job Cloud Scheduler
Creare ed eseguire due job Cloud Scheduler, uno che pubblica valutazioni positive e un secondo che pubblichi valutazioni negative nell'argomento Pub/Sub.
Console
Crea un job Cloud Scheduler per le valutazioni positive.
Visita la pagina Cloud Scheduler nella console.
Fai clic sul pulsante Crea un job.
Inserisci il nome
positive-ratings-publisher
.Seleziona una regione Dataflow vicina a dove esegui i comandi in questo tutorial. Il valore della variabile
REGION
deve essere un nome di regione valido. Per saperne di più su regioni e località, consulta Località di Dataflow.Specifica la frequenza per il job utilizzando il formato unix-cron:
* * * * *
Per ulteriori informazioni, consulta Configurazione delle pianificazioni dei cron job.
Seleziona il tuo fuso orario.
Fai clic su Continua.
Nell'elenco Destinazione, seleziona Pub/Sub.
Seleziona il nome dell'argomento dall'elenco.
Aggiungi la seguente stringa Messaggio da inviare al target:
{"url": "https://beam.apache.org/", "review": "positive"}
Fai clic su Crea.
Ora hai un cron job che invia un messaggio con valutazione positiva al tuo argomento Pub/Sub ogni minuto. La tua funzione Cloud Functions si iscrive a quell'argomento.
Crea un job Cloud Scheduler per le valutazioni negative.
Nella pagina Cloud Scheduler della console, fai clic sul pulsante Crea un job.
Inserisci il nome
negative-ratings-publisher
.Seleziona una regione in cui eseguire il job.
Specifica la frequenza per il job utilizzando il formato unix-cron:
*/2 * * * *
Per ulteriori informazioni, consulta Configurazione delle pianificazioni dei cron job.
Seleziona il tuo fuso orario.
Fai clic su Continua.
Nell'elenco Destinazione, seleziona Pub/Sub.
Seleziona il nome del tuo Argomento dall'elenco.
Aggiungi la seguente stringa Messaggio da inviare alla destinazione:
{"url": "https://beam.apache.org/", "review": "negative"}
Fai clic su Crea.
Ora hai un cron job che invia un messaggio con valutazione negativa al tuo argomento Pub/Sub ogni due minuti. La tua funzione Cloud Functions si iscrive a quell'argomento.
gcloud
Per creare un job Cloud Scheduler per questo tutorial, utilizza la
gcloud scheduler jobs create
. Questo passaggio crea un editore per le "valutazioni positive" che pubblica un messaggio al minuto.gcloud scheduler jobs create pubsub positive-ratings-publisher \ --schedule="* * * * *" \ --location=DATAFLOW_REGION \ --topic="TOPIC_ID" \ --message-body='{"url": "https://beam.apache.org/", "review": "positive"}'
Sostituisci
DATAFLOW_REGION
con regione in cui eseguire il deployment del job Dataflow. Seleziona uno Regione Dataflow vicina a in cui eseguirai i comandi in questo tutorial. Il valore dell'attributoREGION
deve essere un nome di regione valido.Per avviare il job Cloud Scheduler, utilizza il comando
gcloud scheduler jobs run
.gcloud scheduler jobs run --location=DATAFLOW_REGION positive-ratings-publisher
Crea e pubblica un altro publisher simile per le "valutazioni negative" che pubblica un messaggio ogni due minuti. Questo passaggio crea un publisher per "valutazioni negative" che pubblica un messaggio ogni due minuti.
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"}'
Avvia il secondo job Cloud Scheduler.
gcloud scheduler jobs run --location=DATAFLOW_REGION negative-ratings-publisher
Crea un set di dati BigQuery
Crea un set di dati e una tabella BigQuery con lo schema appropriato per il tuo argomento Pub/Sub.
Console
Creare un set di dati BigQuery.
Apri la pagina BigQuery nella console Google Cloud.
Nel riquadro Explorer, seleziona il progetto in cui vuoi creare il set di dati.
Espandi l'opzione Azioni
e fai clic su Crea set di dati.Nella pagina Crea set di dati:
- In ID set di dati, inserisci
tutorial_dataset
. In Posizione dei dati, scegli una posizione geografica per il set di dati. Una volta creato un set di dati, la posizione non può essere modificata.
Non selezionare le altre opzioni.
Fai clic su Crea set di dati.
- In ID set di dati, inserisci
Crea una tabella BigQuery con uno schema.
Nel riquadro Explorer, espandi il progetto e seleziona il set di dati
tutorial_dataset
.Espandi l'opzione
Azioni e fai clic su Apri.Nel riquadro dei dettagli, fai clic su Crea tabella
.Nella sezione Origine della pagina Crea tabella, seleziona Tabella vuota.
Nella sezione Destinazione della pagina Crea tabella:
- Verifica che Nome set di dati sia impostato su
tutorial_dataset
. - Nel campo Nome tabella, inserisci
tutorial
. - Verifica che l'opzione Tipo di tabella sia impostata su Tabella nativa.
- Verifica che Nome set di dati sia impostato su
Nella sezione Schema, inserisci lo schema. definizione di Kubernetes. Attiva Modifica come testo e inserisci il seguente schema di tabella come array JSON.
[ { "mode": "NULLABLE", "name": "url", "type": "STRING" }, { "mode": "NULLABLE", "name": "review", "type": "STRING" } ]
In Impostazioni di partizionamento e clustering, lascia il valore predefinito:
No partitioning
.Nella sezione Opzioni avanzate, lascia il valore predefinito in Crittografia. valore:
Google-managed key
. Per impostazione predefinita, Dataflow cripta i contenuti dei clienti archiviati at-rest.Fai clic su Crea tabella.
gcloud
Utilizza la bq mk
per creare il set di dati.
bq --location=DATAFLOW_REGION mk \
PROJECT_ID:tutorial_dataset
Sostituisci PROJECT_ID
con l'ID del tuo progetto.
Utilizza il comando bq mk
con il flag --table
o -t
per creare una tabella nel
tuo set di dati.
bq mk \
--table \
PROJECT_ID:tutorial_dataset.tutorial \
url:STRING,review:STRING
Creare una funzione definita dall'utente
Se vuoi, puoi creare una UDF JavaScript per estendere il modello di abbonamento Pub/Sub a BigQuery fornito da Google. Le funzioni definite dall'utente consentono di definire le trasformazioni dei dati non presenti nel modello e inserirli nel modello.
La seguente UDF convalida gli URL delle valutazioni in arrivo. Valutazioni con
nessun URL o URL errato viene inoltrato a un'altra tabella di output con suffisso
con _error_records
, nota anche come tabella dei messaggi non recapitabili, nello stesso progetto
e set di dati.
JavaScript
Salva questo snippet JavaScript nel bucket Cloud Storage creato in precedenza.
esegui la pipeline.
Esegui una pipeline in modalità flusso utilizzando il modello di sottoscrizione Pub/Sub a BigQuery fornito da Google. La pipeline riceve i dati in arrivo dall'argomento Pub/Sub e li esporta nel set di dati BigQuery.
Console
Nella console Google Cloud, vai alla pagina Job di Dataflow.
Fai clic su Crea job da modello.
Inserisci un Nome job per il tuo job Dataflow.
Per Endpoint a livello di regione, seleziona una regione per Dataflow lavoro.
In Modello Dataflow, seleziona la sottoscrizione Pub/Sub per BigQuery.
In Tabella di output BigQuery, inserisci quanto segue:
PROJECT_ID:tutorial_dataset.tutorial
In Sottoscrizione di input Pub/Sub, inserisci quanto segue:
projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID
Sostituisci
PROJECT_ID
con l'ID del progetto in cui creato il tuo set di dati BigQuery eSUBSCRIPTION_ID
con il nome della tua sottoscrizione Pub/Sub.In Posizione temporanea, inserisci quanto segue:
gs://BUCKET_NAME/temp/
Sostituisci
BUCKET_NAME
con il nome del tuo account Cloud Storage di sincronizzare la directory di una VM con un bucket. La cartellatemp
archivia i file temporanei, ad esempio un job di pipeline in fasi.(Facoltativo) Per includere una funzione definita dall'utente per il job, espandi Parametri facoltativi.
In Percorso della funzione JavaScript definita dall'utente in Cloud Storage, inserisci quanto segue:
gs://BUCKET_NAME/dataflow_udf_transform.js
In Nome della funzione JavaScript definita dall'utente, inserisci quanto segue:
process
Fai clic su Esegui job.
Per verificare se il modello può inoltrare messaggi a una tabella dei messaggi non recapitabili, pubblicare alcune valutazioni senza URL o con URL errati.
Vai alla pagina Argomenti di Pub/Sub.
Fai clic su TOPIC_ID.
Vai alla sezione Messaggi.
Fai clic su Pubblica messaggio.
Inserisci alcune valutazioni senza URL o con URL errati in Testo del messaggio. Ad esempio:
{"url": "https://beam.apache.org/documentation/sdks/java/", "review": "positive"}
Fai clic su Pubblica.
gcloud
Per eseguire il modello nella shell o nel terminale, utilizza il comando
gcloud dataflow jobs run
.
gcloud dataflow jobs run JOB_NAME \
--gcs-location gs://dataflow-templates-DATAFLOW_REGION/latest/PubSub_Subscription_to_BigQuery \
--region DATAFLOW_REGION \
--staging-location gs://BUCKET_NAME/temp \
--parameters \
inputSubscription=projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID,\
outputTableSpec=PROJECT_ID:tutorial_dataset.tutorial
Sostituisci JOB_NAME
con un nome univoco di tua scelta.
Facoltativamente, per eseguire il modello con la funzione definita dall'utente, utilizza il comando seguente:
gcloud dataflow jobs run JOB_NAME \
--gcs-location gs://dataflow-templates-DATAFLOW_REGION/latest/PubSub_Subscription_to_BigQuery \
--region DATAFLOW_REGION \
--staging-location gs://BUCKET_NAME/temp \
--parameters \
inputSubscription=projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID,\
outputTableSpec=PROJECT_ID:tutorial_dataset.tutorial,\
javascriptTextTransformGcsPath=gs://BUCKET_NAME/dataflow_udf_transform.js,\
javascriptTextTransformFunctionName=process
Per verificare se il modello può inoltrare messaggi a una tabella dei messaggi non recapitabili, pubblica alcune valutazioni senza URL o con URL errati. Ad esempio:
gcloud pubsub topics publish TOPIC_ID \
--message='{"url": "https://beam.apache.org/documentation/sdks/java/", "review": "positive"}'
Visualizza i tuoi risultati
Visualizzare i dati scritti nelle tabelle BigQuery.
Console
Nella console Google Cloud, vai alla pagina BigQuery.
Vai alla pagina di BigQueryNell'editor di query, esegui la seguente query:
SELECT * FROM `PROJECT_ID.tutorial_dataset.tutorial` LIMIT 1000
La visualizzazione dei dati nella tabella può richiedere fino a un minuto.
La query restituisce le righe che sono state aggiunte alla tabella nelle ultime 24 ore. Puoi anche eseguire query utilizzando SQL standard.
Se prevedi che nella tabella dei messaggi non recapitabili vengano scritti alcuni record di errore, nella query, utilizza il nome tabella
tutorial_error_records
. Ad esempio:SELECT * FROM `PROJECT_ID.tutorial_dataset.tutorial_error_records` LIMIT 1000
gcloud
Controlla i risultati in BigQuery eseguendo questa query:
bq query --use_legacy_sql=false 'SELECT * FROM `'"PROJECT_ID.tutorial_dataset.tutorial"'`'
Mentre questa pipeline è in esecuzione, puoi vedere nuove righe aggiunte alla tabella BigQuery ogni minuto.
Se prevedi che alcuni record di errore vengano scritti nella tabella delle email inutilizzate,
nella query utilizza il nome della tabella tutorial_error_records
. Ad esempio:
SELECT * FROM `PROJECT_ID.tutorial_dataset.tutorial_error_records`
LIMIT 1000
Esegui la pulizia
Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questo tutorial, elimina il progetto che contiene le risorse oppure mantieni il progetto ed elimina le singole risorse.
Elimina il progetto
Il modo più semplice per eliminare la fatturazione è eliminare il progetto Google Cloud che hai creato per il tutorial.
Console
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
gcloud
Delete a Google Cloud project:
gcloud projects delete PROJECT_ID
Elimina le singole risorse
Se vuoi riutilizzare il progetto in un secondo momento, puoi conservarlo ma eliminarlo le risorse che hai creato durante il tutorial.
Arresta la pipeline Dataflow
Console
Nella console Google Cloud, vai alla pagina Job di Dataflow.
Fai clic sul job che vuoi interrompere.
Per interrompere un job, lo stato del job deve essere in esecuzione.
Nella pagina dei dettagli del job, fai clic su Arresta.
Fai clic su Annulla.
Per confermare la scelta, fai clic su Arresta job.
gcloud
Per annullare il job Dataflow, utilizza il comando
gcloud dataflow jobs
.
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"
Esegui la pulizia delle risorse del progetto Google Cloud
Console
Elimina i job Cloud Scheduler.
Vai alla pagina Cloud Scheduler nella console Google Cloud.
Seleziona i job.
Fai clic sul pulsante Elimina nella parte superiore della pagina e conferma l'eliminazione.
Elimina l'argomento e la sottoscrizione Pub/Sub.
Vai alla pagina Argomenti di Pub/Sub nella console Google Cloud.
Seleziona l'argomento che hai creato.
Fai clic su Elimina per eliminare definitivamente l'argomento.
Vai alla pagina Sottoscrizioni di Pub/Sub nella console Google Cloud.
Seleziona l'abbonamento creato con l'argomento.
Fai clic su Elimina per eliminare definitivamente l'abbonamento.
Elimina la tabella e il set di dati BigQuery.
Nella console Google Cloud, vai alla pagina BigQuery.
Nel riquadro Explorer, espandi il progetto.
Accanto al set di dati da eliminare, fai clic su
Visualizza le azioni, poi fai clic su elimina.
Elimina il bucket Cloud Storage.
Nella console Google Cloud, vai alla pagina Bucket in Cloud Storage.
Seleziona il bucket da eliminare, fai clic su
Elimina e segui le istruzioni.
gcloud
Per eliminare i job Cloud Scheduler, utilizza il comando
gcloud scheduler jobs delete
.gcloud scheduler jobs delete negative-ratings-publisher --location=DATAFLOW_REGION
gcloud scheduler jobs delete positive-ratings-publisher --location=DATAFLOW_REGION
Per eliminare l'argomento e la sottoscrizione Pub/Sub, utilizza i comandi
gcloud pubsub subscriptions delete
egcloud pubsub topics delete
.gcloud pubsub subscriptions delete SUBSCRIPTION_ID gcloud pubsub topics delete TOPIC_ID
Per eliminare la tabella BigQuery, utilizza il comando
bq rm
.bq rm -f -t PROJECT_ID:tutorial_dataset.tutorial
Elimina il set di dati BigQuery. Il set di dati da solo non comporta costi.
bq rm -r -f -d PROJECT_ID:tutorial_dataset
Per eliminare il bucket Cloud Storage, utilizza il comando
gcloud storage rm
. Il bucket non comporta alcun addebito.gcloud storage rm gs://BUCKET_NAME --recursive
Revocare le credenziali
Console
Se mantieni il progetto, revoca i ruoli che hai concesso all'account di servizio predefinito di Compute Engine.
- Nella console Google Cloud, vai alla pagina IAM.
Seleziona un progetto, una cartella o un'organizzazione.
Trova la riga contenente l'entità di cui vuoi revocare l'accesso. In quella riga, fai clic su
Modifica entità.Fai clic sul pulsante Elimina
per ogni ruolo che vuoi revocare e poi fai clic su Salva.
gcloud
- Se mantieni il progetto, revoca i ruoli concessi all'account di servizio predefinito di Compute Engine. Esegui il seguente comando una volta per ciascuno dei seguenti ruoli IAM:
roles/dataflow.admin
roles/dataflow.worker
roles/storage.admin
roles/pubsub.editor
roles/bigquery.dataEditor
gcloud projects remove-iam-policy-binding <var>PROJECT_ID</var> \ --member=serviceAccount:<var>PROJECT_NUMBER</var>-compute@developer.gserviceaccount.com \ --role=<var>ROLE</var>
-
Optional: Revoke the authentication credentials that you created, and delete the local credential file.
gcloud auth application-default revoke
-
Optional: Revoke credentials from the gcloud CLI.
gcloud auth revoke
Passaggi successivi
- Estendi il tuo modello Dataflow con le funzioni definite dall'utente.
- Scopri di più sull'utilizzo dei modelli Dataflow.
- Visualizza tutti i modelli forniti da Google.
- Scopri come utilizzare Pub/Sub per creare e utilizzare gli argomenti e come creare una sottoscrizione pull.
- Scopri di più sull'utilizzo di Cloud Scheduler per pianificare ed eseguire i cron job.
- Scopri di più sull'utilizzo di BigQuery per creare set di dati.
- Scopri di più sulle sottoscrizioni Pub/Sub.
- Esplora architetture di riferimento, diagrammi e best practice su Google Cloud. Dai un'occhiata al nostro Centro architetture cloud.