Questa pagina mostra come utilizzare Dataflow per leggere i dati da Google Cloud Managed Service per Apache Kafka e scrivere i record in una tabella BigQuery. Questo tutorial utilizza il modello Apache Kafka a BigQuery per creare il job Dataflow.
Panoramica
Apache Kafka è una piattaforma open source per lo streaming di eventi. Kafka viene comunemente utilizzato nelle architetture distribuite per consentire la comunicazione tra componenti a basso accoppiamento. Puoi utilizzare Dataflow per leggere gli eventi da Kafka, elaborarli e scrivere i risultati in una tabella BigQuery per ulteriori analisi.
Managed Service per Apache Kafka è un servizio che ti aiuta a eseguire cluster Kafka sicuri e scalabili. Google Cloud
Autorizzazioni obbligatorie
Il service account worker Dataflow deve disporre dei seguenti ruoli Identity and Access Management (IAM):
- Managed Kafka Client (
roles/managedkafka.client) - Editor dati BigQuery (
roles/bigquery.dataEditor)
Per saperne di più, consulta Sicurezza e autorizzazioni di Dataflow.
Crea un cluster Kafka
In questo passaggio, crei un cluster Managed Service per Apache Kafka. Per maggiori informazioni, consulta Crea un cluster Managed Service per Apache Kafka.
Console
Vai alla pagina Managed Service per Apache Kafka > Cluster.
Fai clic su Crea.
Nella casella Nome del cluster, inserisci un nome per il cluster.
Nell'elenco Regione, seleziona una località per il cluster.
Fai clic su Crea.
gcloud
Utilizza il comando managed-kafka clusters create.
gcloud managed-kafka clusters create CLUSTER \
--location=REGION \
--cpu=3 \
--memory=3GiB \
--subnets=projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET_NAME
Sostituisci quanto segue:
CLUSTER: un nome per il clusterREGION: la regione in cui hai creato la subnetPROJECT_ID: il tuo ID progettoSUBNET_NAME: la subnet in cui vuoi eseguire il deployment del cluster
La creazione di un cluster richiede in genere 20-30 minuti.
Crea un argomento Kafka
Dopo aver creato il cluster Managed Service per Apache Kafka, crea un argomento.
Console
Vai alla pagina Managed Service per Apache Kafka > Cluster.
Fai clic sul nome del cluster.
Nella pagina dei dettagli del cluster, fai clic su Crea argomento.
Nella casella Nome argomento, inserisci un nome per l'argomento.
Fai clic su Crea.
gcloud
Utilizza il comando managed-kafka topics create.
gcloud managed-kafka topics create TOPIC_NAME \
--cluster=CLUSTER \
--location=REGION \
--partitions=10 \
--replication-factor=3
Sostituisci quanto segue:
TOPIC_NAME: il nome dell'argomento da creare
Crea una tabella BigQuery
In questo passaggio, crei una tabella BigQuery con lo schema seguente:
| Nome colonna | Tipo di dati |
|---|---|
name |
STRING |
customer_id |
INTEGER |
Se non hai ancora un set di dati BigQuery, creane uno. Per saperne di più, vedi Creare set di dati. Poi crea una nuova tabella vuota:
Console
Vai alla pagina BigQuery.
Nel riquadro Explorer, espandi il progetto e seleziona un set di dati.
Nella sezione delle informazioni Set di dati, fai clic su Crea tabella.
Nell'elenco