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
, che viene ereditato dallo spazio delle 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
vengono mappati ai campiRECORD
BigQuery.- Tutti gli altri tipi vengono mappati ai campi BigQuery con i tipi corrispondenti.
- I tipi definiti dall'utente (UDT) e i tipi di dati tupla 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 secret. Ad esempio,
AstraCS:abcdefghij
. - astraDatabaseId: l'identificatore univoco (UUID) del database. Ad esempio,
cf7af129-d33a-498f-ad06-d97a6ee6eb7
. - astraKeyspace: il nome dello spazio delle 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 fornita, viene scelta un'impostazione predefinita, utile con i database multiregionali.
- 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.
- Dal menu a discesa Modello di dataflow, 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 univoco del job a tua sceltaVERSION
: la versione del modello che vuoi utilizzarePuoi utilizzare i seguenti valori:
latest
per utilizzare l'ultima versione del modello, disponibile nella cartella principale senza data nel 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 con data 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 delle 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 progetto Google Cloud in cui vuoi eseguire il job DataflowJOB_NAME
: un nome univoco del job a tua sceltaVERSION
: la versione del modello che vuoi utilizzarePuoi utilizzare i seguenti valori:
latest
per utilizzare l'ultima versione del modello, disponibile nella cartella principale senza data nel 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 con data 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 delle chiavi CassandraASTRA_TABLE
: la tabella Cassandra
Passaggi successivi
- Scopri di più sui modelli Dataflow.
- Consulta l'elenco dei modelli forniti da Google.