Il modello Bigtable to Cloud Storage Parquet è una pipeline che legge i dati da una tabella Bigtable e li scrive in un bucket Cloud Storage in formato Parquet. Puoi utilizzare il modello per spostare i dati da Bigtable a Cloud Storage.
Requisiti della pipeline
- La tabella Bigtable deve esistere.
- Il bucket Cloud Storage di output deve esistere prima dell'esecuzione della pipeline.
Parametri del modello
Parametri obbligatori
- bigtableProjectId: l'ID del progetto Google Cloud che contiene l'istanza Cloud Bigtable da cui vuoi leggere i dati.
- bigtableInstanceId: l'ID dell'istanza Cloud Bigtable che contiene la tabella.
- bigtableTableId: l'ID della tabella Cloud Bigtable da esportare.
- outputDirectory: il percorso e il prefisso del nome file per la scrittura dei file di output. Deve terminare con una barra. La formattazione di data e ora viene utilizzata per analizzare il percorso della directory per i formattatori di data e ora. Ad esempio:
gs://your-bucket/your-path. - filenamePrefix: il prefisso del nome del file Parquet. Ad esempio,
table1-. Il valore predefinito èpart.
Parametri facoltativi
- numShards: il numero massimo di shard di output prodotti durante la scrittura. Un numero maggiore di shard significa una velocità effettiva più elevata per la scrittura in Cloud Storage, ma potenzialmente un costo di aggregazione dei dati più elevato tra gli shard durante l'elaborazione dei file di output di Cloud Storage. Il valore predefinito viene deciso da Dataflow.
- bigtableAppProfileId: l'ID del profilo applicazione Bigtable da utilizzare per l'esportazione. Se non specifichi un profilo app, Bigtable utilizza il profilo app predefinito dell'istanza: https://cloud.google.com/bigtable/docs/app-profiles#default-app-profile.
- minRowCountForPageSizeCheck: il numero minimo di righe da memorizzare nel buffer prima di verificare se è stata raggiunta la soglia della dimensione della pagina. Con righe di grandi dimensioni, il valore predefinito (100) può causare un utilizzo eccessivo della memoria; imposta un valore inferiore (ad esempio, 1) per scaricare le pagine più frequentemente. Il valore predefinito è 100.
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 job univoco.
- (Facoltativo) Per Endpoint regionale, 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 Dataflow, seleziona il modello Cloud Bigtable to Parquet Files on Cloud Storage.
- Nei campi dei parametri forniti, inserisci i valori dei parametri.
- Fai clic su Esegui job.
gcloud
Esegui il modello nella shell o nel terminale:
gcloud dataflow jobs run JOB_NAME \ --gcs-location gs://dataflow-templates-REGION_NAME/VERSION/Cloud_Bigtable_to_GCS_Parquet \ --region REGION_NAME \ --parameters \ bigtableProjectId=BIGTABLE_PROJECT_ID,\ bigtableInstanceId=INSTANCE_ID,\ bigtableTableId=TABLE_ID,\ outputDirectory=OUTPUT_DIRECTORY,\ filenamePrefix=FILENAME_PREFIX,\ numShards=NUM_SHARDS
Sostituisci quanto segue:
JOB_NAME: un nome job univoco a tua sceltaVERSION: la versione del modello che vuoi utilizzarePuoi utilizzare i seguenti valori:
latestper utilizzare la versione più recente del modello, disponibile nella cartella principale non datata 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 datata nel bucket: gs://dataflow-templates-REGION_NAME/
REGION_NAME: la regione in cui vuoi eseguire il deployment del job Dataflow, ad esempious-central1BIGTABLE_PROJECT_ID: l'ID del Google Cloud progetto dell'istanza Bigtable da cui vuoi leggere i datiINSTANCE_ID: l'ID dell'istanza Bigtable che contiene la tabellaTABLE_ID: l'ID della tabella Bigtable da esportareOUTPUT_DIRECTORY: il percorso Cloud Storage in cui vengono scritti i dati, ad esempiogs://mybucket/somefolderFILENAME_PREFIX: il prefisso del nome del file Parquet, ad esempiooutput-NUM_SHARDS: il numero di file Parquet da generare, ad esempio1
API
Per eseguire il modello utilizzando l'API REST, invia una richiesta HTTP POST. Per saperne di più 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/Cloud_Bigtable_to_GCS_Parquet { "jobName": "JOB_NAME", "parameters": { "bigtableProjectId": "BIGTABLE_PROJECT_ID", "bigtableInstanceId": "INSTANCE_ID", "bigtableTableId": "TABLE_ID", "outputDirectory": "OUTPUT_DIRECTORY", "filenamePrefix": "FILENAME_PREFIX", "numShards": "NUM_SHARDS" }, "environment": { "zone": "us-central1-f" } }
Sostituisci quanto segue:
PROJECT_ID: l' Google Cloud ID progetto 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:
latestper utilizzare la versione più recente del modello, disponibile nella cartella principale non datata 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 datata nel bucket: gs://dataflow-templates-REGION_NAME/
LOCATION: la regione in cui vuoi eseguire il deployment del job Dataflow, ad esempious-central1BIGTABLE_PROJECT_ID: l'ID del Google Cloud progetto dell'istanza Bigtable da cui vuoi leggere i datiINSTANCE_ID: l'ID dell'istanza Bigtable che contiene la tabellaTABLE_ID: l'ID della tabella Bigtable da esportareOUTPUT_DIRECTORY: il percorso Cloud Storage in cui vengono scritti i dati, ad esempiogs://mybucket/somefolderFILENAME_PREFIX: il prefisso del nome del file Parquet, ad esempiooutput-NUM_SHARDS: il numero di file Parquet da generare, ad esempio1
Passaggi successivi
- Scopri di più sui modelli Dataflow.
- Consulta l'elenco dei modelli forniti da Google.