Guida rapida all'utilizzo dei modelli

Questa guida rapida mostra come creare una pipeline in modalità flusso utilizzando un modello Dataflow fornito da Google. In particolare, questa guida rapida utilizza come esempio il modello Argomento Pub/Sub a BigQuery.

Il modello Argomento Pub/Sub-BigQuery è una pipeline in modalità flusso che legge i messaggi in formato JSON da un argomento Pub/Sub e li scrive in una tabella BigQuery.


Per indicazioni dettagliate su questa attività direttamente nella console, fai clic su Procedura guidata:

Procedura guidata


Le seguenti sezioni illustrano la stessa procedura utilizzata per fare clic su Procedura guidata.

Prima di iniziare

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  3. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  4. Abilita le API Dataflow, Compute Engine, Cloud Logging, Cloud Storage, Google Cloud Storage JSON, BigQuery, Pub/Sub, and Resource Manager.

    Abilita le API

  5. Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  6. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  7. Abilita le API Dataflow, Compute Engine, Cloud Logging, Cloud Storage, Google Cloud Storage JSON, BigQuery, Pub/Sub, and Resource Manager.

    Abilita le API

  8. Crea un bucket Cloud Storage:
    1. Nella console Google Cloud, vai alla pagina Bucket di Cloud Storage.

      Vai alla pagina Bucket

    2. Fai clic su Crea bucket.
    3. Nella pagina Crea un bucket, inserisci le informazioni del bucket. Per andare al passaggio successivo, fai clic su Continua.
      • In Assegna un nome al bucket, inserisci un nome univoco per il bucket. Non includere informazioni sensibili nel nome del bucket, poiché lo spazio dei nomi dei bucket è globale e visibile pubblicamente.
      • Per Scegli dove archiviare i tuoi dati, segui questi passaggi:
        • Seleziona un'opzione Tipo di località.
        • Seleziona un'opzione Località.
      • Per Scegli una classe di archiviazione predefinita per i dati, seleziona quanto segue: Standard.
      • Per Scegli come controllare l'accesso agli oggetti, seleziona un'opzione Controllo dell'accesso.
      • In Impostazioni avanzate (facoltative), specifica un metodo di crittografia, un criterio di conservazione o le etichette dei bucket.
    4. Fai clic su Crea.
  9. Copia quanto segue, poiché ti serviranno in una sezione successiva:
    • Il nome del bucket Cloud Storage.
    • Il tuo ID progetto Google Cloud.

      Per trovare questo ID, consulta la sezione Identificazione dei progetti.
  10. Per completare i passaggi di questa guida rapida, il tuo account utente deve avere i ruoli di Amministratore Dataflow e Utente account di servizio. L'account di servizio predefinito di Compute Engine deve avere il ruolo Worker Dataflow. Per aggiungere i ruoli richiesti nella console:

    1. Nella console, vai alla pagina IAM.
      Vai a IAM
    2. Seleziona il progetto.
    3. Nella riga contenente il tuo account utente, fai clic su Modifica entità, quindi su Aggiungi un altro ruolo.
    4. Nell'elenco a discesa, seleziona il ruolo Amministratore Dataflow.
    5. Ripeti la procedura per il ruolo Utente account di servizio, quindi fai clic su Salva.
    6. Nella riga contenente l'account di servizio predefinito di Compute Engine, fai clic su Modifica entità, quindi fai clic su Aggiungi un altro ruolo.
    7. Nell'elenco a discesa, seleziona il ruolo Worker Dataflow.
    8. Ripeti la configurazione per i ruoli Editor Pub/Sub e Editor dati BigQuery, poi fai clic su Salva.

      Per ulteriori informazioni sulla concessione dei ruoli, vedi Concedere un ruolo IAM utilizzando la console.

  11. A meno che tu non decida di disattivarlo, ogni nuovo progetto inizia con una rete predefinita. Se il progetto non ha una rete predefinita, devi avere una rete nel progetto per cui il tuo account utente ha il ruolo Utente rete Compute (roles/compute.networkUser).

Crea un set di dati e una tabella BigQuery

Crea un set di dati e una tabella BigQuery con lo schema appropriato per l'argomento Pub/Sub utilizzando la console.

In questo esempio, il nome del set di dati è taxirides e il nome della tabella è realtime. Per creare il set di dati e la tabella:

  1. Nella console, vai alla pagina BigQuery.
    Vai a BigQuery
  2. Nel riquadro Explorer, accanto al progetto in cui vuoi creare il set di dati fai clic su Visualizza azioni, poi fai clic su Crea set di dati.
  3. Nel riquadro Crea set di dati, segui questi passaggi:
    1. In ID set di dati, inserisci taxirides.
    2. Per Località dei dati, scegli Stati Uniti (US). I set di dati pubblici sono archiviati nella località multiregionale US. Per semplicità, posiziona il set di dati nella stessa posizione.
    3. Lascia invariate le altre impostazioni predefinite e fai clic su Crea set di dati.
  4. Nel riquadro Explorer, espandi il progetto.
  5. Accanto al set di dati taxirides, fai clic su Visualizza azioni, poi su Apri.
  6. Nel riquadro dei dettagli, fai clic su Crea tabella.
  7. Nel riquadro Crea tabella, segui questi passaggi:
    1. Nella sezione Origine, per Crea tabella da, seleziona Tabella vuota.
    2. Nella sezione Destinazione, per Tabella, inserisci realtime.
    3. Nella sezione Schema, fai clic sull'opzione di attivazione/disattivazione Modifica come testo e incolla la seguente definizione di schema nella casella:
      ride_id:string,point_idx:integer,latitude:float,longitude:float,timestamp:timestamp,
      meter_reading:float,meter_increment:float,ride_status:string,passenger_count:integer
    4. Nella sezione Impostazioni di cluster e partizionamento, per Partizionamento, seleziona il campo Timestamp.
  8. Lascia invariate le altre impostazioni predefinite e fai clic su Crea tabella.

Esegui la pipeline.

Esegui una pipeline in modalità flusso utilizzando il modello Argomento Pub/Sub a BigQuery fornito da Google. La pipeline riceve i dati in entrata dall'argomento di input.

  1. Nella console, vai alla pagina Job di Dataflow.
    Vai a Job
  2. Fai clic su Crea job da modello.
  3. Inserisci taxi-data come Nome job per il tuo job Dataflow.
  4. In Modello Dataflow, seleziona il modello Argomento Pub/Sub a BigQuery.
  5. In Inserisci argomento Pub/Sub, fai clic su Inserisci l'argomento manualmente.
  6. Nella finestra di dialogo, per Nome argomento inserisci quanto segue, quindi fai clic su Salva:
    projects/pubsub-public-data/topics/taxirides-realtime

    Questo argomento Pub/Sub disponibile pubblicamente si basa sul set di dati aperto del taxi di New York e della Limousine Commission. Di seguito è riportato un messaggio di esempio da questo argomento, in formato JSON:

    {
      "ride_id": "19c41fc4-e362-4be5-9d06-435a7dc9ba8e",
      "point_idx": 217,
      "latitude": 40.75399,
      "longitude": -73.96302,
      "timestamp": "2021-03-08T02:29:09.66644-05:00",
      "meter_reading": 6.293821,
      "meter_increment": 0.029003782,
      "ride_status": "enroute",
      "passenger_count": 1
    }
  7. In Tabella di output BigQuery, inserisci quanto segue:
    PROJECT_ID:taxirides.realtime

    Sostituisci PROJECT_ID con l'ID del progetto in cui hai creato il set di dati BigQuery.

  8. In Posizione temporanea, inserisci quanto segue:
    BUCKET_NAME/temp/

    Sostituisci BUCKET_NAME con il nome del tuo bucket Cloud Storage. La cartella temp archivia file temporanei, ad esempio il job di pipeline in modalità temporanea.

  9. Se il progetto non ha una rete predefinita, fai clic su Mostra parametri facoltativi, quindi inserisci una Rete e una Subnet. Per maggiori informazioni, consulta la sezione Specificare una rete e una subnet.
  10. Fai clic su Esegui job.

Visualizza i tuoi risultati

Per visualizzare i dati scritti nella tabella realtime:

  1. Nella console, vai alla pagina BigQuery.

    Vai a BigQuery

  2. Nell'Editor query, incolla la seguente query:

    SELECT * FROM `PROJECT_ID.taxirides.realtime`
    WHERE `timestamp` > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 DAY)
    LIMIT 1000

    Sostituisci PROJECT_ID con l'ID del progetto in cui hai creato il set di dati BigQuery. La visualizzazione dei dati nella tabella può richiedere fino a un minuto.

  3. Fai clic su Esegui.

    La query restituisce le righe che sono state aggiunte alla tabella nelle ultime 24 ore. Puoi anche eseguire query utilizzando SQL standard.

Esegui la pulizia

Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi:

Elimina il progetto

Il modo più semplice per eliminare la fatturazione è eliminare il progetto Google Cloud che hai creato per la guida rapida.

  1. Nella console Google Cloud, vai alla pagina Gestisci risorse.

    Vai a Gestisci risorse

  2. Nell'elenco dei progetti, seleziona il progetto che vuoi eliminare, quindi fai clic su Elimina.
  3. Nella finestra di dialogo, digita l'ID del progetto e fai clic su Chiudi per eliminare il progetto.

Elimina le singole risorse

Se vuoi conservare il progetto Google Cloud utilizzato in questa guida rapida, elimina le singole risorse:

  1. Nella console, vai alla pagina Job di Dataflow.
    Vai a Job
  2. Seleziona il tuo job di streaming dall'elenco dei job.
  3. Nella navigazione, fai clic su Interrompi.
  4. Nella finestra di dialogo Arresta job, annulla o svuota la pipeline, quindi fai clic su Arresta job.
  5. Nella console, vai alla pagina BigQuery.
    Vai a BigQuery
  6. Nel riquadro Explorer, espandi il progetto.
  7. Accanto al set di dati da eliminare, fai clic su Visualizza azioni, poi su Apri.
  8. Nel riquadro dei dettagli, fai clic su Elimina set di dati, quindi segui le istruzioni.
  9. Nella console Google Cloud, vai alla pagina Bucket di Cloud Storage.

    Vai a Bucket

  10. Fai clic sulla casella di controllo relativa al bucket da eliminare.
  11. Per eliminare il bucket, fai clic su Elimina e segui le istruzioni.

Passaggi successivi