Il modello AstraDB to BigQuery è una pipeline batch che legge i record da AstraDB e li scrive in BigQuery.
Se la tabella di destinazione non esiste in BigQuery, la pipeline crea una tabella con i seguenti valori:
Dataset ID
, ereditato dallo spazio chiavi Cassandra.Table ID
, ereditato dalla tabella Cassandra.
Lo schema della tabella di destinazione viene dedotto dalla tabella Cassandra di origine.
List
eSet
sono mappati ai campiREPEATED
di BigQuery.Map
sono mappati ai campiRECORD
di BigQuery.- Tutti gli altri tipi vengono mappati ai campi BigQuery con i tipi corrispondenti.
- I tipi UDT (user-defined type) e i tipi di dati tuple di Cassandra non sono supportati.
Requisiti della pipeline
- Account AstraDB con un token
Parametri del modello
Parametri obbligatori
- astraToken: il valore del token o l'ID risorsa del secret. Ad esempio,
AstraCS:abcdefghij
. - astraDatabaseId: l'identificatore univoco (UUID) del database. Ad esempio,
cf7af129-d33a-498f-ad06-d97a6ee6eb7
. - astraKeyspace: il nome dello spazio chiavi Cassandra all'interno del database Astra.
- astraTable: il nome della tabella all'interno del database Cassandra. Ad esempio,
my_table
.
Parametri facoltativi
- astraQuery: la query da utilizzare per filtrare le righe anziché leggere l'intera tabella.
- astraDatabaseRegion: se non viene fornito, viene scelto un valore predefinito, utile per i database multiregione.
- minTokenRangesCount: il numero minimo di suddivisioni da utilizzare per distribuire la query.
- outputTableSpec: la posizione della tabella BigQuery in cui scrivere l'output. Utilizza il formato
<PROJECT_ID>:<DATASET_NAME>.<TABLE_NAME>
. Lo schema della tabella deve corrispondere agli oggetti di input.
Esegui il modello
Console
- Vai alla pagina Crea job da modello di Dataflow. Vai a Crea job da modello
- Nel campo Nome job, inserisci un nome univoco per il job.
- (Facoltativo) Per Endpoint a livello di regione, seleziona un valore dal menu a discesa. La regione predefinita è
us-central1
.Per un elenco delle regioni in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.
- Nel menu a discesa Modello di flusso di dati, seleziona the AstraDB to BigQuery template.
- Nei campi dei parametri forniti, inserisci i valori dei parametri.
- Fai clic su Esegui job.
gcloud
Nella shell o nel terminale, esegui il modello:
gcloud dataflow flex-template run JOB_NAME \ --template-file-gcs-location=gs://dataflow-templates-REGION_NAME/VERSION/flex/AstraDB_To_BigQuery \ --project=PROJECT_ID \ --region=REGION_NAME \ --parameters \ astraToken=ASTRA_TOKEN,\ astraDatabaseId=ASTRA_DATABASE_ID,\ astraKeyspace=ASTRA_KEYSPACE,\ astraTable=ASTRA_TABLE,\
Sostituisci quanto segue:
JOB_NAME
: un nome di job univoco a tua sceltaVERSION
: la versione del modello che vuoi utilizzarePuoi utilizzare i seguenti valori:
latest
per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://dataflow-templates-REGION_NAME/latest/- il nome della versione, ad esempio
2023-09-12-00_RC00
, per utilizzare una versione specifica del modello, che si trova nidificata nella rispettiva cartella principale datata nel bucket: gs://dataflow-templates-REGION_NAME/
REGION_NAME
: la regione in cui vuoi eseguire il deployment del job Dataflow, ad esempious-central1
ASTRA_TOKEN
: il token AstraASTRA_DATABASE_ID
: l'identificatore del databaseASTRA_KEYSPACE
: lo spazio chiavi CassandraASTRA_TABLE
: la tabella Cassandra
API
Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui relativi ambiti di autorizzazione, consulta projects.templates.launch
.
POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/flexTemplates:launch { "launchParameter": { "jobName": "JOB_NAME", "parameters": { "astraToken": "ASTRA_TOKEN", "astraDatabaseId": "ASTRA_DATABASE_ID", "astraKeyspace": "ASTRA_KEYSPACE", "astraTable": "ASTRA_TABLE", }, "containerSpecGcsPath": "gs://dataflow-templates-LOCATION/VERSION/flex/AstraDB_To_BigQuery", "environment": { "maxWorkers": "10" } } }
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto Google Cloud in cui vuoi eseguire il job DataflowJOB_NAME
: un nome di job univoco a tua sceltaVERSION
: la versione del modello che vuoi utilizzarePuoi utilizzare i seguenti valori:
latest
per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://dataflow-templates-REGION_NAME/latest/- il nome della versione, ad esempio
2023-09-12-00_RC00
, per utilizzare una versione specifica del modello, che si trova nidificata nella rispettiva cartella principale datata nel bucket: gs://dataflow-templates-REGION_NAME/
LOCATION
: la regione in cui vuoi eseguire il deployment del job Dataflow, ad esempious-central1
ASTRA_TOKEN
: il token AstraASTRA_DATABASE_ID
: l'identificatore del databaseASTRA_KEYSPACE
: lo spazio chiavi CassandraASTRA_TABLE
: la tabella Cassandra
Passaggi successivi
- Scopri di più sui modelli Dataflow.
- Consulta l'elenco dei modelli forniti da Google.