Il modello da Spanner a testo di Cloud Storage è una pipeline batch che legge i dati da una tabella Spanner e li scrive in Cloud Storage come file di testo CSV.
Requisiti della pipeline
- La tabella Spanner di input deve esistere prima di eseguire la pipeline.
Parametri del modello
Parametri obbligatori
- spannerTable : la tabella Spanner da cui leggere i dati.
- spannerProjectId : l'ID del progetto Google Cloud che contiene il database Spanner da cui leggere i dati.
- spannerInstanceId : l'ID istanza della tabella richiesta.
- spannerDatabaseId : l'ID database della tabella richiesta.
- textWritePrefix : il prefisso del percorso Cloud Storage che specifica dove sono scritti i dati. ad esempio gs://mybucket/somefolder/.
Parametri facoltativi
- csvTempDirectory : il percorso di Cloud Storage in cui vengono scritti i file CSV temporanei. ad esempio gs://your-bucket/your-path.
- spannerPriority : la priorità delle richieste (https://cloud.google.com/spanner/docs/reference/rest/v1/RequestOptions) per le chiamate Spanner. I valori possibili sono
HIGH
,MEDIUM
eLOW
. Il valore predefinito èMEDIUM
. - spannerHost : l'endpoint di Cloud Spanner da chiamare nel modello. Utilizzato solo per i test. Esempio: https://batch-spanner.googleapis.com. Il valore predefinito è: https://batch-spanner.googleapis.com.
- spannerSnapshotTime : il timestamp che corrisponde alla versione del database Spanner da cui vuoi leggere. Il timestamp deve essere specificato nel formato "Zulu" UTC RFC 3339 (https://tools.ietf.org/html/rfc3339). Il timestamp deve essere nel passato e si applica l'inattività massima del timestamp (https://cloud.google.com/spanner/docs/timestamp-bounds#maximum_timestamp_staleness). (Esempio: 1990-12-31T23:59:60Z). Il campo predefinito è vuoto.
- dataBoostEnabled : imposta su
true
per utilizzare le risorse di calcolo di Spanner Data Boost per eseguire il job con un impatto quasi pari a zero sui flussi di lavoro OLTP di Spanner. Se impostato su true, è necessaria l'autorizzazione Identity and Access Management (IAM) dispanner.databases.useDataBoost
. Per saperne di più, consulta la panoramica di Data Boost (https://cloud.google.com/spanner/docs/databoost/databoost-overview). Il valore predefinito è false.
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 di regioni in cui è possibile eseguire un job Dataflow, consulta Località di Dataflow.
- Dal menu a discesa Modello Dataflow, seleziona the Cloud Spanner to Text Files on Cloud Storage template.
- Inserisci i valori parametro negli appositi campi.
- Fai clic su Esegui job.
gcloud
Nella shell o nel terminale, esegui il modello:
gcloud dataflow jobs run JOB_NAME \ --gcs-location gs://dataflow-templates-REGION_NAME/VERSION/Spanner_to_GCS_Text \ --region REGION_NAME \ --parameters \ spannerProjectId=SPANNER_PROJECT_ID,\ spannerDatabaseId=DATABASE_ID,\ spannerInstanceId=INSTANCE_ID,\ spannerTable=TABLE_ID,\ textWritePrefix=gs://BUCKET_NAME/output/
Sostituisci quanto segue:
JOB_NAME
: un nome 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 padre non con 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 è possibile trovare 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
SPANNER_PROJECT_ID
: l'ID del progetto Google Cloud del database Spanner da cui vuoi leggere i datiDATABASE_ID
: l'ID database SpannerBUCKET_NAME
: il nome del tuo bucket Cloud StorageINSTANCE_ID
: l'ID istanza SpannerTABLE_ID
: l'ID tabella di Spanner
API
Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per maggiori informazioni
sull'API e sui relativi ambiti di autorizzazione, consulta
projects.templates.launch
.
POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates-LOCATION/VERSION/Spanner_to_GCS_Text { "jobName": "JOB_NAME", "parameters": { "spannerProjectId": "SPANNER_PROJECT_ID", "spannerDatabaseId": "DATABASE_ID", "spannerInstanceId": "INSTANCE_ID", "spannerTable": "TABLE_ID", "textWritePrefix": "gs://BUCKET_NAME/output/" }, "environment": { "zone": "us-central1-f" } }
Sostituisci quanto segue:
PROJECT_ID
: l'ID del progetto Google Cloud in cui vuoi eseguire il job DataflowJOB_NAME
: un nome 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 padre non con 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 è possibile trovare 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
SPANNER_PROJECT_ID
: l'ID del progetto Google Cloud del database Spanner da cui vuoi leggere i datiDATABASE_ID
: l'ID database SpannerBUCKET_NAME
: il nome del tuo bucket Cloud StorageINSTANCE_ID
: l'ID istanza SpannerTABLE_ID
: l'ID tabella di Spanner
Passaggi successivi
- Scopri di più sui modelli Dataflow.
- Consulta l'elenco dei modelli forniti da Google.