Modelli batch forniti da Google

Google fornisce un insieme di modelli di flussi di dati open source. Per informazioni generali sui modelli, consulta la sezione Modelli di Dataflow. Per un elenco di tutti i modelli forniti da Google, consulta la Guida introduttiva all'utilizzo dei modelli forniti da Google.

Questa guida documenta i modelli batch.

Da TFRecord da BigQuery a Cloud Storage

Il modello TFRecords da BigQuery a Cloud Storage è una pipeline che legge i dati di una query BigQuery e li scrive in un bucket Cloud Storage in formato TFRecord. Puoi specificare le suddivisioni della percentuale di addestramento, test e convalida. Per impostazione predefinita, la suddivisione è 1 o 100% per il set di addestramento e 0 o 0% per i set di test e convalida. Quando si imposta la suddivisione del set di dati, la somma di addestramento, test e convalida deve essere pari a 1 o 100% (ad esempio, 0,6+0,2+0,2). Dataflow determina automaticamente il numero ottimale di shard per ciascun set di dati di output.

Requisiti per questa pipeline:

  • Il set di dati e la tabella BigQuery devono esistere.
  • Il bucket Cloud Storage di output deve esistere prima dell'esecuzione della pipeline. Non è necessario preesistere alle sottodirectory, che sono necessarie per l'addestramento, il test e la convalida.

Parametri del modello

Parametro Descrizione
readQuery Una query SQL BigQuery che estrae dati dall'origine. Ad esempio, select * from dataset1.sample_table.
outputDirectory Il prefisso percorso di primo livello di Cloud Storage per scrivere i file TFRecord di addestramento, test e convalida. Ad esempio, gs://mybucket/output. Le sottodirectory per i file TFRecord di addestramento, test e convalida risultanti vengono generate automaticamente da outputDirectory. Ad esempio, gs://mybucket/output/train
trainingPercentage (Facoltativo) La percentuale di dati delle query assegnati ai file TFRecord di addestramento. Il valore predefinito è 1 o 100%.
testingPercentage (Facoltativo) La percentuale di dati delle query assegnate ai test dei file TFRecord. Il valore predefinito è 0 o 0%.
validationPercentage (Facoltativo) La percentuale di dati di query assegnati ai file TFRecord di convalida. Il valore predefinito è 0 o 0%.
outputSuffix (Facoltativo) Il suffisso per i file TFRecord di addestramento, test e convalida. Il valore predefinito è .tfrecord.

Esecuzione del modello di file TFRecord da BigQuery a Cloud Storage

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the BigQuery to TFRecords template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/VERSION/Cloud_BigQuery_to_GCS_TensorFlow_Records \
    --region REGION_NAME \
    --parameters \
readQuery=READ_QUERY,\
outputDirectory=OUTPUT_DIRECTORY,\
trainingPercentage=TRAINING_PERCENTAGE,\
testingPercentage=TESTING_PERCENTAGE,\
validationPercentage=VALIDATION_PERCENTAGE,\
outputSuffix=OUTPUT_FILENAME_SUFFIX

Sostituisci quanto segue:

  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs:// Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs://Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • READ_QUERY: la query BigQuery da eseguire
  • OUTPUT_DIRECTORY: il prefisso del percorso di Cloud Storage per i set di dati di output
  • TRAINING_PERCENTAGE: la suddivisione percentuale decimale per il set di dati di addestramento
  • TESTING_PERCENTAGE: la suddivisione percentuale decimale per il set di dati di test
  • VALIDATION_PERCENTAGE: la suddivisione percentuale decimale per il set di dati di convalida
  • OUTPUT_FILENAME_SUFFIX: il suffisso file di output preferito di TensorFlow

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/VERSION/Cloud_BigQuery_to_GCS_TensorFlow_Records
{
   "jobName": "JOB_NAME",
   "parameters": {
       "readQuery":"READ_QUERY",
       "outputDirectory":"OUTPUT_DIRECTORY",
       "trainingPercentage":"TRAINING_PERCENTAGE",
       "testingPercentage":"TESTING_PERCENTAGE",
       "validationPercentage":"VALIDATION_PERCENTAGE",
       "outputSuffix":"OUTPUT_FILENAME_SUFFIX"
   },
   "environment": { "zone": "us-central1-f" }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs:// Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs://Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • READ_QUERY: la query BigQuery da eseguire
  • OUTPUT_DIRECTORY: il prefisso del percorso di Cloud Storage per i set di dati di output
  • TRAINING_PERCENTAGE: la suddivisione percentuale decimale per il set di dati di addestramento
  • TESTING_PERCENTAGE: la suddivisione percentuale decimale per il set di dati di test
  • VALIDATION_PERCENTAGE: la suddivisione percentuale decimale per il set di dati di convalida
  • OUTPUT_FILENAME_SUFFIX: il suffisso file di output preferito di TensorFlow

Esportazione di BigQuery in Parquet (tramite API Storage)

Il modello BigQuery Export in Parquet è una pipeline batch che legge i dati da una tabella BigQuery e li scrive in un bucket Cloud Storage in formato Parquet. Questo modello utilizza l'API BigQuery Storage per esportare i dati.

Requisiti per questa pipeline:

  • La tabella BigQuery di input deve esistere prima dell'esecuzione della pipeline.
  • Prima di eseguire la pipeline, deve esistere il bucket Cloud Storage di output.

Parametri del modello

Parametro Descrizione
tableRef La posizione della tabella di input di BigQuery. Ad esempio, <my-project>:<my-dataset>.<my-table>.
bucket La cartella Cloud Storage in cui scrivere i file Parquet. Ad esempio, gs://mybucket/exports.
numShards (Facoltativo) Il numero di shard del file di output. Il valore predefinito è 1.
fields (Facoltativo) Un elenco di campi separati da virgole da selezionare nella tabella BigQuery di input.

Esecuzione del modello Parquet da BigQuery a Cloud Storage

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the BigQuery export to Parquet (via Storage API) template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. Fai clic su Esegui job.

gcloud

Esegui il modello nella shell o nel terminale:

gcloud beta dataflow flex-template run JOB_NAME \
    --project=PROJECT_ID \
    --template-file-gcs-location=gs://dataflow-templates/VERSION/flex/BigQuery_to_Parquet \
    --region=REGION_NAME \
    --parameters \
tableRef=BIGQUERY_TABLE,\
bucket=OUTPUT_DIRECTORY,\
numShards=NUM_SHARDS,\
fields=FIELDS

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs:// Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • BIGQUERY_TABLE: nome della tabella BigQuery
  • OUTPUT_DIRECTORY: la tua cartella Cloud Storage per i file di output
  • NUM_SHARDS: il numero desiderato di shard del file di output
  • FIELDS: l'elenco di campi separati da virgole dalla tabella BigQuery di input.

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/flexTemplates:launch
{
   "launch_parameter": {
      "jobName": "JOB_NAME",
      "parameters": {
          "tableRef": "BIGQUERY_TABLE",
          "bucket": "OUTPUT_DIRECTORY",
          "numShards": "NUM_SHARDS",
          "fields": "FIELDS"
      },
      "containerSpecGcsPath": "gs://dataflow-templates/VERSION/flex/BigQuery_to_Parquet",
   }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • BIGQUERY_TABLE: nome della tabella BigQuery
  • OUTPUT_DIRECTORY: la tua cartella Cloud Storage per i file di output
  • NUM_SHARDS: il numero desiderato di shard del file di output
  • FIELDS: l'elenco di campi separati da virgole dalla tabella BigQuery di input.

BigQuery per Elasticsearch

Il modello da BigQuery a Elasticsearch è una pipeline batch che importa i dati da una tabella BigQuery a Elasticsearch come documenti. Il modello è in grado di leggere l'intera tabella o di leggere record specifici utilizzando una query fornita.

Requisiti per questa pipeline

  • Deve essere presente la tabella BigQuery di origine.
  • Un host Elasticsearch su un'istanza GCP o su Elastic Cloud con Elasticsearch versione 7.0 o successiva e dovrebbe essere accessibile dalle macchine worker Dataflow.

Parametri del modello

Parametro Descrizione
connectionUrl URL Elasticsearch nel formato https://hostname:[port] o specifica CloudID se utilizzi Elastic Cloud.
apiKey Chiave API codificata Base64 utilizzata per l'autenticazione.
index L'indice Elasticsearch verso cui verranno inviate le richieste, ad esempio my-index.
inputTableSpec (Facoltativo) Tabella BigQuery da cui inserire l'elemento in Elasticsearch. Devi fornire una tabella o una query. Ad esempio, projectId:datasetId.tablename.
query (Facoltativo) Query SQL per l'estrazione di dati da BigQuery. Devi fornire una tabella o una query.
useLegacySql (Facoltativo) Impostato su true per utilizzare l'SQL precedente (applicabile solo se fornisci la query). Valore predefinito: false.
batchSize (Facoltativo) Dimensioni batch nel numero di documenti. Valore predefinito: 1000.
batchSizeBytes (Facoltativo) Dimensioni batch in numero di byte. Valore predefinito: 5242880 (5 MB).
maxRetryAttempts (Facoltativo) Numero massimo di nuovi tentativi, il valore deve essere > 0. Valore predefinito: no retries.
maxRetryDuration (Facoltativo) La durata massima per il nuovo tentativo, espressa in millisecondi, deve essere > 0. Valore predefinito: no retries.

Esecuzione del modello BigQuery in Elasticsearch

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the BigQuery to Elasticsearch template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. Fai clic su Esegui job.

gcloud

Esegui il modello nella shell o nel terminale:

gcloud beta dataflow flex-template run JOB_NAME \
    --project=PROJECT_ID \
    --region=REGION_NAME \
    --template-file-gcs-location=gs://dataflow-templates/VERSION/flex/BigQuery_to_Elasticsearch \
    --parameters \
inputTableSpec=INPUT_TABLE_SPEC,\
connectionUrl=CONNECTION_URL,\
apiKey=APIKEY,\
index=INDEX

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • INPUT_TABLE_SPEC: nome della tabella BigQuery.
  • CONNECTION_URL: il tuo URL Elasticsearch.
  • APIKEY: la chiave API codificata in Base64 per l'autenticazione.
  • INDEX: il tuo indice Elasticsearch.

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/flexTemplates:launch
{
   "launch_parameter": {
      "jobName": "JOB_NAME",
      "parameters": {
          "inputTableSpec": "INPUT_TABLE_SPEC",
          "connectionUrl": "CONNECTION_URL",
          "apiKey": "APIKEY",
          "index": "INDEX"
      },
      "containerSpecGcsPath": "gs://dataflow-templates/VERSION/flex/BigQuery_to_Elasticsearch",
   }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs:// Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • INPUT_TABLE_SPEC: nome della tabella BigQuery.
  • CONNECTION_URL: il tuo URL Elasticsearch.
  • APIKEY: la chiave API codificata in Base64 per l'autenticazione.
  • INDEX: il tuo indice Elasticsearch.

Bigtable da Avro a Cloud Storage

Il modello Avro da Bigtable a Cloud Storage è una pipeline che legge i dati di una tabella Bigtable e li scrive in un bucket Cloud Storage in formato Avro. Puoi utilizzare il modello per spostare dati da Bigtable a Cloud Storage.

Requisiti per questa pipeline:

  • La tabella Bigtable deve esistere.
  • Prima di eseguire la pipeline, deve esistere il bucket Cloud Storage di output.

Parametri del modello

Parametro Descrizione
bigtableProjectId L'ID del progetto Google Cloud dell'istanza Bigtable di cui vuoi leggere i dati.
bigtableInstanceId L'ID dell'istanza Bigtable che contiene la tabella.
bigtableTableId L'ID della tabella Bigtable da esportare.
outputDirectory Percorso di Cloud Storage in cui sono scritti i dati. Ad esempio, gs://mybucket/somefolder.
filenamePrefix Il prefisso del nome file Avro. Ad esempio, output-.

Esecuzione del modello di file Avro da Bigtable a Cloud Storage

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Cloud Bigtable to Avro Files on Cloud Storage template .
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/VERSION/Cloud_Bigtable_to_GCS_Avro \
    --region REGION_NAME \
    --parameters \
bigtableProjectId=BIGTABLE_PROJECT_ID,\
bigtableInstanceId=INSTANCE_ID,\
bigtableTableId=TABLE_ID,\
outputDirectory=OUTPUT_DIRECTORY,\
filenamePrefix=FILENAME_PREFIX

Sostituisci quanto segue:

  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • BIGTABLE_PROJECT_ID: l'ID del progetto Google Cloud dell'istanza Bigtable di cui vuoi leggere i dati.
  • INSTANCE_ID: l'ID dell'istanza Bigtable che contiene la tabella
  • TABLE_ID: l'ID della tabella Bigtable da esportare
  • OUTPUT_DIRECTORY: percorso di Cloud Storage in cui sono scritti i dati, ad esempio gs://mybucket/somefolder
  • FILENAME_PREFIX: il prefisso del nome file di Avro, ad esempio output-

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/VERSION/Cloud_Bigtable_to_GCS_Avro
{
   "jobName": "JOB_NAME",
   "parameters": {
       "bigtableProjectId": "BIGTABLE_PROJECT_ID",
       "bigtableInstanceId": "INSTANCE_ID",
       "bigtableTableId": "TABLE_ID",
       "outputDirectory": "OUTPUT_DIRECTORY",
       "filenamePrefix": "FILENAME_PREFIX",
   },
   "environment": { "zone": "us-central1-f" }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • BIGTABLE_PROJECT_ID: l'ID del progetto Google Cloud dell'istanza Bigtable di cui vuoi leggere i dati.
  • INSTANCE_ID: l'ID dell'istanza Bigtable che contiene la tabella
  • TABLE_ID: l'ID della tabella Bigtable da esportare
  • OUTPUT_DIRECTORY: percorso di Cloud Storage in cui sono scritti i dati, ad esempio gs://mybucket/somefolder
  • FILENAME_PREFIX: il prefisso del nome file di Avro, ad esempio output-

Bigtable su Cloud Storage Parquet

Il modello Bigtable in Cloud Storage Parquet è una pipeline che legge i dati di una tabella Bigtable e li scrive in un bucket Cloud Storage in formato Parquet. Puoi utilizzare il modello per spostare dati da Bigtable a Cloud Storage.

Requisiti per questa pipeline:

  • La tabella Bigtable deve esistere.
  • Prima di eseguire la pipeline, deve esistere il bucket Cloud Storage di output.

Parametri del modello

Parametro Descrizione
bigtableProjectId L'ID del progetto Google Cloud dell'istanza Bigtable di cui vuoi leggere i dati.
bigtableInstanceId L'ID dell'istanza Bigtable che contiene la tabella.
bigtableTableId L'ID della tabella Bigtable da esportare.
outputDirectory Percorso di Cloud Storage in cui sono scritti i dati. Ad esempio, gs://mybucket/somefolder.
filenamePrefix Il prefisso del nome file Parquet. Ad esempio, output-.
numShards Il numero di shard del file di output. Ad esempio 2.

Esecuzione del modello di file Bigtable in Cloud Storage Parquet

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Cloud Bigtable to Parquet Files on Cloud Storage template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/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 scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs://Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • BIGTABLE_PROJECT_ID: l'ID del progetto Google Cloud dell'istanza Bigtable di cui vuoi leggere i dati.
  • INSTANCE_ID: l'ID dell'istanza Bigtable che contiene la tabella
  • TABLE_ID: l'ID della tabella Bigtable da esportare
  • OUTPUT_DIRECTORY: percorso di Cloud Storage in cui sono scritti i dati, ad esempio gs://mybucket/somefolder
  • FILENAME_PREFIX: il prefisso del nome file Parquet, ad esempio output-
  • NUM_SHARDS: il numero di file Parquet da visualizzare, ad esempio 1

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/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'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs://Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • BIGTABLE_PROJECT_ID: l'ID del progetto Google Cloud dell'istanza Bigtable di cui vuoi leggere i dati.
  • INSTANCE_ID: l'ID dell'istanza Bigtable che contiene la tabella
  • TABLE_ID: l'ID della tabella Bigtable da esportare
  • OUTPUT_DIRECTORY: percorso di Cloud Storage in cui sono scritti i dati, ad esempio gs://mybucket/somefolder
  • FILENAME_PREFIX: il prefisso del nome file Parquet, ad esempio output-
  • NUM_SHARDS: il numero di file Parquet da visualizzare, ad esempio 1

Bigtable in Cloud Storage SequenzaFile

Il modello Bigtable - File di sequenza di Cloud Storage è una pipeline che legge i dati da una tabella Bigtable e li scrive in un bucket Cloud Storage in formato SequenzaFile. Puoi utilizzare il modello per copiare dati da Bigtable in Cloud Storage.

Requisiti per questa pipeline:

  • La tabella Bigtable deve esistere.
  • Prima di eseguire la pipeline, deve esistere il bucket Cloud Storage di output.

Parametri del modello

Parametro Descrizione
bigtableProject L'ID del progetto Google Cloud dell'istanza Bigtable di cui vuoi leggere i dati.
bigtableInstanceId L'ID dell'istanza Bigtable che contiene la tabella.
bigtableTableId L'ID della tabella Bigtable da esportare.
bigtableAppProfileId L'ID del profilo dell'applicazione Bigtable da utilizzare per l'esportazione. Se non specifichi un profilo dell'app, Bigtable utilizza il profilo dell'app predefinito dell'istanza.
destinationPath Percorso di Cloud Storage in cui sono scritti i dati. Ad esempio, gs://mybucket/somefolder.
filenamePrefix Il prefisso del nome file della sequenza. Ad esempio, output-.

Esecuzione del modello SequenzaFile da Bigtable a Cloud Storage

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Cloud Bigtable to SequenceFile Files on Cloud Storage template .
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/VERSION/Cloud_Bigtable_to_GCS_SequenceFile \
    --region REGION_NAME \
    --parameters \
bigtableProject=BIGTABLE_PROJECT_ID,\
bigtableInstanceId=INSTANCE_ID,\
bigtableTableId=TABLE_ID,\
bigtableAppProfileId=APPLICATION_PROFILE_ID,\
destinationPath=DESTINATION_PATH,\
filenamePrefix=FILENAME_PREFIX

Sostituisci quanto segue:

  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs://Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • BIGTABLE_PROJECT_ID: l'ID del progetto Google Cloud dell'istanza Bigtable di cui vuoi leggere i dati.
  • INSTANCE_ID: l'ID dell'istanza Bigtable che contiene la tabella
  • TABLE_ID: l'ID della tabella Bigtable da esportare
  • APPLICATION_PROFILE_ID: ID del profilo dell'applicazione Bigtable da utilizzare per l'esportazione
  • DESTINATION_PATH: percorso di Cloud Storage in cui sono scritti i dati, ad esempio gs://mybucket/somefolder
  • FILENAME_PREFIX: il prefisso del nome file SequenzaFile, ad esempio output-

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/VERSION/Cloud_Bigtable_to_GCS_SequenceFile
{
   "jobName": "JOB_NAME",
   "parameters": {
       "bigtableProject": "BIGTABLE_PROJECT_ID",
       "bigtableInstanceId": "INSTANCE_ID",
       "bigtableTableId": "TABLE_ID",
       "bigtableAppProfileId": "APPLICATION_PROFILE_ID",
       "destinationPath": "DESTINATION_PATH",
       "filenamePrefix": "FILENAME_PREFIX",
   },
   "environment": { "zone": "us-central1-f" }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs:// Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • BIGTABLE_PROJECT_ID: l'ID del progetto Google Cloud dell'istanza Bigtable di cui vuoi leggere i dati.
  • INSTANCE_ID: l'ID dell'istanza Bigtable che contiene la tabella
  • TABLE_ID: l'ID della tabella Bigtable da esportare
  • APPLICATION_PROFILE_ID: ID del profilo dell'applicazione Bigtable da utilizzare per l'esportazione
  • DESTINATION_PATH: percorso di Cloud Storage in cui sono scritti i dati, ad esempio gs://mybucket/somefolder
  • FILENAME_PREFIX: il prefisso del nome file SequenzaFile, ad esempio output-

Testo da Datastore a Cloud Storage [Deprecato]

Questo modello è ritirato e verrà rimosso nel primo trimestre del 2022. Esegui la migrazione al modello Firestore a Cloud Storage Text.

Il modello di testo da Datastore a Cloud Storage è una pipeline batch che legge le entità Datastore e le scrive in Cloud Storage come file di testo. Puoi fornire una funzione per elaborare ciascuna entità come stringa JSON. Se non fornisci una funzione di questo tipo, ogni riga del file di output sarà un'entità con serie JSON.

Requisiti per questa pipeline:

Datastore deve essere configurato nel progetto prima di eseguire la pipeline.

Parametri del modello

Parametro Descrizione
datastoreReadGqlQuery Una query GQL che specifica le entità da acquisire. Ad esempio, SELECT * FROM MyKind.
datastoreReadProjectId L'ID progetto di Google Cloud dell'istanza di Datastore da cui leggere i dati.
datastoreReadNamespace Lo spazio dei nomi delle entità richieste. Per utilizzare lo spazio dei nomi predefinito, lascia vuoto questo parametro.
javascriptTextTransformGcsPath (Facoltativo) L'URI Cloud Storage del file .js che definisce la funzione definita dall'utente JavaScript (UDF) che vuoi utilizzare. Ad esempio: gs://my-bucket/my-udfs/my_file.js.
javascriptTextTransformFunctionName (Facoltativo) Il nome della funzione definita dall'utente JavaScript che vuoi utilizzare. Ad esempio, se il codice funzione JavaScript è myTransform(inJson) { /*...do stuff...*/ }, il nome della funzione è myTransform. Per esempi di UDF JavaScript di esempio, consulta Esempi di UDF.
textWritePrefix Il prefisso del percorso Cloud Storage per specificare dove sono scritti i dati. Ad esempio, gs://mybucket/somefolder/.

Esecuzione del modello di testo da Datastore a Cloud Storage

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Datastore to Text Files on Cloud Storage template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/VERSION/Datastore_to_GCS_Text \
    --region REGION_NAME \
    --parameters \
datastoreReadGqlQuery="SELECT * FROM DATASTORE_KIND",\
datastoreReadProjectId=DATASTORE_PROJECT_ID,\
datastoreReadNamespace=DATASTORE_NAMESPACE,\
javascriptTextTransformGcsPath=PATH_TO_JAVASCRIPT_UDF_FILE,\
javascriptTextTransformFunctionName=JAVASCRIPT_FUNCTION,\
textWritePrefix=gs://BUCKET_NAME/output/

Sostituisci quanto segue:

  • JOB_NAME: un nome job univoco a tua scelta
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs:// Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • BUCKET_NAME: il nome del tuo bucket Cloud Storage
  • DATASTORE_PROJECT_ID: ID del progetto Cloud in cui esiste l'istanza di Datastore
  • DATASTORE_KIND: tipo di entità Datastore
  • DATASTORE_NAMESPACE: spazio dei nomi delle tue entità Datastore
  • JAVASCRIPT_FUNCTION: Il nome della funzione definita dall'utente JavaScript che vuoi utilizzare

    Ad esempio, se il codice funzione JavaScript è myTransform(inJson) { /*...do stuff...*/ }, il nome della funzione è myTransform. Per esempi di UDF JavaScript di esempio, consulta Esempi di UDF.

  • PATH_TO_JAVASCRIPT_UDF_FILE: L'URI Cloud Storage del file .js che definisce la funzione JavaScript definita dall'utente (UDF) che vuoi utilizzare, ad esempio gs://my-bucket/my-udfs/my_file.js

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/VERSION/Datastore_to_GCS_Text
{
   "jobName": "JOB_NAME",
   "parameters": {
       "datastoreReadGqlQuery": "SELECT * FROM DATASTORE_KIND"
       "datastoreReadProjectId": "DATASTORE_PROJECT_ID",
       "datastoreReadNamespace": "DATASTORE_NAMESPACE",
       "javascriptTextTransformGcsPath": "PATH_TO_JAVASCRIPT_UDF_FILE",
       "javascriptTextTransformFunctionName": "JAVASCRIPT_FUNCTION",
       "textWritePrefix": "gs://BUCKET_NAME/output/"
   },
   "environment": { "zone": "us-central1-f" }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs://Dataflow-templates/
  • BUCKET_NAME: il nome del tuo bucket Cloud Storage
  • DATASTORE_PROJECT_ID: ID del progetto Cloud in cui esiste l'istanza di Datastore
  • DATASTORE_KIND: tipo di entità Datastore
  • DATASTORE_NAMESPACE: spazio dei nomi delle tue entità Datastore
  • JAVASCRIPT_FUNCTION: Il nome della funzione definita dall'utente JavaScript che vuoi utilizzare

    Ad esempio, se il codice funzione JavaScript è myTransform(inJson) { /*...do stuff...*/ }, il nome della funzione è myTransform. Per esempi di UDF JavaScript di esempio, consulta Esempi di UDF.

  • PATH_TO_JAVASCRIPT_UDF_FILE: L'URI Cloud Storage del file .js che definisce la funzione JavaScript definita dall'utente (UDF) che vuoi utilizzare, ad esempio gs://my-bucket/my-udfs/my_file.js

Da Firestore a Cloud Storage Text

Il modello di testo da Firestore a Cloud Storage è una pipeline batch che legge le entità Firestore e le scrive in Cloud Storage sotto forma di file di testo. Puoi fornire una funzione per elaborare ciascuna entità come stringa JSON. Se non fornisci una funzione di questo tipo, ogni riga del file di output sarà un'entità con serie JSON.

Requisiti per questa pipeline:

Firestore deve essere configurato nel progetto prima di eseguire la pipeline.

Parametri del modello

Parametro Descrizione
firestoreReadGqlQuery Una query GQL che specifica le entità da acquisire. Ad esempio, SELECT * FROM MyKind.
firestoreReadProjectId L'ID progetto di Google Cloud dell'istanza Firestore da cui vuoi leggere i dati.
firestoreReadNamespace Lo spazio dei nomi delle entità richieste. Per utilizzare lo spazio dei nomi predefinito, lascia vuoto questo parametro.
javascriptTextTransformGcsPath (Facoltativo) L'URI Cloud Storage del file .js che definisce la funzione definita dall'utente JavaScript (UDF) che vuoi utilizzare. Ad esempio: gs://my-bucket/my-udfs/my_file.js.
javascriptTextTransformFunctionName (Facoltativo) Il nome della funzione definita dall'utente JavaScript che vuoi utilizzare. Ad esempio, se il codice funzione JavaScript è myTransform(inJson) { /*...do stuff...*/ }, il nome della funzione è myTransform. Per esempi di UDF JavaScript di esempio, consulta Esempi di UDF.
textWritePrefix Il prefisso del percorso Cloud Storage per specificare dove sono scritti i dati. Ad esempio, gs://mybucket/somefolder/.

Esecuzione del modello di testo da Firestore a Cloud Storage

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Firestore to Text Files on Cloud Storage template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/VERSION/Firestore_to_GCS_Text \
    --region REGION_NAME \
    --parameters \
firestoreReadGqlQuery="SELECT * FROM FIRESTORE_KIND",\
firestoreReadProjectId=FIRESTORE_PROJECT_ID,\
firestoreReadNamespace=FIRESTORE_NAMESPACE,\
javascriptTextTransformGcsPath=PATH_TO_JAVASCRIPT_UDF_FILE,\
javascriptTextTransformFunctionName=JAVASCRIPT_FUNCTION,\
textWritePrefix=gs://BUCKET_NAME/output/

Sostituisci quanto segue:

  • JOB_NAME: un nome job univoco a tua scelta
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs:// Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs://Dataflow-templates/
  • BUCKET_NAME: il nome del tuo bucket Cloud Storage
  • FIRESTORE_PROJECT_ID: l'ID progetto Cloud in cui è presente l'istanza Firestore
  • FIRESTORE_KIND: il tipo di entità Firestore
  • FIRESTORE_NAMESPACE: lo spazio dei nomi delle tue entità Firestore
  • JAVASCRIPT_FUNCTION: Il nome della funzione definita dall'utente JavaScript che vuoi utilizzare

    Ad esempio, se il codice funzione JavaScript è myTransform(inJson) { /*...do stuff...*/ }, il nome della funzione è myTransform. Per esempi di UDF JavaScript di esempio, consulta Esempi di UDF.

  • PATH_TO_JAVASCRIPT_UDF_FILE: L'URI Cloud Storage del file .js che definisce la funzione JavaScript definita dall'utente (UDF) che vuoi utilizzare, ad esempio gs://my-bucket/my-udfs/my_file.js

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/VERSION/Firestore_to_GCS_Text
{
   "jobName": "JOB_NAME",
   "parameters": {
       "firestoreReadGqlQuery": "SELECT * FROM FIRESTORE_KIND"
       "firestoreReadProjectId": "FIRESTORE_PROJECT_ID",
       "firestoreReadNamespace": "FIRESTORE_NAMESPACE",
       "javascriptTextTransformGcsPath": "PATH_TO_JAVASCRIPT_UDF_FILE",
       "javascriptTextTransformFunctionName": "JAVASCRIPT_FUNCTION",
       "textWritePrefix": "gs://BUCKET_NAME/output/"
   },
   "environment": { "zone": "us-central1-f" }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • BUCKET_NAME: il nome del tuo bucket Cloud Storage
  • FIRESTORE_PROJECT_ID: l'ID progetto Cloud in cui è presente l'istanza Firestore
  • FIRESTORE_KIND: il tipo di entità Firestore
  • FIRESTORE_NAMESPACE: lo spazio dei nomi delle tue entità Firestore
  • JAVASCRIPT_FUNCTION: Il nome della funzione definita dall'utente JavaScript che vuoi utilizzare

    Ad esempio, se il codice funzione JavaScript è myTransform(inJson) { /*...do stuff...*/ }, il nome della funzione è myTransform. Per esempi di UDF JavaScript di esempio, consulta Esempi di UDF.

  • PATH_TO_JAVASCRIPT_UDF_FILE: L'URI Cloud Storage del file .js che definisce la funzione JavaScript definita dall'utente (UDF) che vuoi utilizzare, ad esempio gs://my-bucket/my-udfs/my_file.js

Avro da Cloud Spanner a Cloud Storage

Il modello Cloud Spanner in Avro Files su Cloud Storage è una pipeline batch che esporta un intero database Cloud Spanner in Cloud Storage in formato Avro. L'esportazione di un database Cloud Spanner crea una cartella nel bucket selezionato. La cartella contiene:

  • Un file spanner-export.json.
  • Un file TableName-manifest.json per ogni tabella nel database esportato.
  • Uno o più file TableName.avro-#####-of-#####.

Ad esempio, quando esporti un database con due tabelle, Singers e Albums, viene creato il seguente set di file:

  • Albums-manifest.json
  • Albums.avro-00000-of-00002
  • Albums.avro-00001-of-00002
  • Singers-manifest.json
  • Singers.avro-00000-of-00003
  • Singers.avro-00001-of-00003
  • Singers.avro-00002-of-00003
  • spanner-export.json

Requisiti per questa pipeline:

  • Deve esistere il database Cloud Spanner.
  • Deve essere presente il bucket Cloud Storage di output.
  • Oltre ai ruoli IAM necessari per eseguire i job Dataflow, devi disporre anche dei ruoli IAM appropriati per leggere i dati di Cloud Spanner e scrivere nel bucket Cloud Storage.

Parametri del modello

Parametro Descrizione
instanceId L'ID istanza del database Cloud Spanner che vuoi esportare.
databaseId L'ID del database Cloud Spanner che vuoi esportare.
outputDir Il percorso Cloud Storage in cui vuoi esportare i file Avro. Il job di esportazione crea una nuova directory in questo percorso che contiene i file esportati.
snapshotTime (Facoltativo) Il timestamp corrispondente alla versione del database Cloud Spanner che vuoi leggere. Il timestamp deve essere specificato in base al formato RFC 3339 UTC &Zulu". Ad esempio, 1990-12-31T23:59:60Z. Il timestamp deve essere passato e deve essere applicata l'importanza massima del timestamp.
tableNames (Facoltativo) Un elenco di tabelle separate da virgole che specifica il sottoinsieme del database Cloud Spanner da esportare. L'elenco deve includere tutte le tabelle correlate (tabelle principali, tabelle di riferimento esterne). Se non sono esplicitamente elencati, il flag 'shouldExportRelatedTables' deve essere impostato per un'esportazione riuscita.
shouldExportRelatedTables (Facoltativo) Il flag utilizzato insieme a 'tableNames' parametro per includere tutte le tabelle correlate da esportare.
spannerProjectId (Facoltativo) L'ID progetto Google Cloud del database Cloud Spanner da cui vuoi leggere i dati.

Esecuzione di Cloud Spanner nel modello di file Avro su Cloud Storage

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.

    Affinché il job venga visualizzato nella pagina Istanze di Spanner della console, il nome del job deve corrispondere al seguente formato:

    cloud-spanner-export-SPANNER_INSTANCE_ID-SPANNER_DATABASE_NAME

    Sostituisci quanto segue:

    • SPANNER_INSTANCE_ID: ID istanza Spanner
    • SPANNER_DATABASE_NAME: nome del database Spanner
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Cloud Spanner to Avro Files on Cloud Storage template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/VERSION/Cloud_Spanner_to_GCS_Avro \
    --region REGION_NAME \
    --staging-location GCS_STAGING_LOCATION \
    --parameters \
instanceId=INSTANCE_ID,\
databaseId=DATABASE_ID,\
outputDir=GCS_DIRECTORY

Sostituisci quanto segue:

  • JOB_NAME: un nome job univoco a tua scelta

    Affinché il job venga visualizzato nella parte di Cloud Spanner della console, il nome del job deve corrispondere al formato cloud-spanner-export-INSTANCE_ID-DATABASE_ID.

  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • GCS_STAGING_LOCATION: percorso per scrivere file temporanei, ad esempio gs://mybucket/temp
  • INSTANCE_ID: ID dell'istanza Cloud Spanner
  • DATABASE_ID: ID del database Cloud Spanner
  • GCS_DIRECTORY: il percorso Cloud Storage da cui sono stati esportati i file Avro in

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/VERSION/Cloud_Spanner_to_GCS_Avro
{
   "jobName": "JOB_NAME",
   "parameters": {
       "instanceId": "INSTANCE_ID",
       "databaseId": "DATABASE_ID",
       "outputDir": "gs://GCS_DIRECTORY"
   }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta

    Affinché il job venga visualizzato nella parte di Cloud Spanner della console, il nome del job deve corrispondere al formato cloud-spanner-export-INSTANCE_ID-DATABASE_ID.

  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs://Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • GCS_STAGING_LOCATION: percorso per scrivere file temporanei, ad esempio gs://mybucket/temp
  • INSTANCE_ID: ID dell'istanza Cloud Spanner
  • DATABASE_ID: ID del database Cloud Spanner
  • GCS_DIRECTORY: il percorso Cloud Storage da cui sono stati esportati i file Avro in

Testo da Cloud Spanner a Cloud Storage

Il modello Cloud Spanner to Cloud Storage Text è una pipeline batch che legge i dati di una tabella Cloud Spanner e li scrive in Cloud Storage sotto forma di file di testo CSV.

Requisiti per questa pipeline:

  • La tabella Spanner di input deve esistere prima dell'esecuzione della pipeline.

Parametri del modello

Parametro Descrizione
spannerProjectId L'ID progetto di Google Cloud del database Cloud Spanner da cui leggere i dati.
spannerDatabaseId L'ID database della tabella richiesta.
spannerInstanceId L'ID istanza della tabella richiesta.
spannerTable La tabella da cui leggere i dati.
textWritePrefix La directory in cui sono scritti i file di testo di output. Aggiungi / alla fine. Ad esempio, gs://mybucket/somefolder/.
spannerSnapshotTime (Facoltativo) Il timestamp corrispondente alla versione del database Cloud Spanner che vuoi leggere. Il timestamp deve essere specificato in base al formato RFC 3339 UTC &Zulu". Ad esempio, 1990-12-31T23:59:60Z. Il timestamp deve essere passato e deve essere applicata l'importanza massima del timestamp.

Esecuzione del modello Cloud Text to Cloud Spanner

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Cloud Spanner to Text Files on Cloud Storage template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/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 scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • SPANNER_PROJECT_ID: ID del progetto Cloud del database Spanner da cui leggere i dati
  • DATABASE_ID: ID del database Spanner
  • BUCKET_NAME: il nome del tuo bucket Cloud Storage
  • INSTANCE_ID: l'ID istanza Spanner
  • TABLE_ID: ID della tabella Spanner

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/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 progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs:// Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • SPANNER_PROJECT_ID: ID del progetto Cloud del database Spanner da cui leggere i dati
  • DATABASE_ID: ID del database Spanner
  • BUCKET_NAME: il nome del tuo bucket Cloud Storage
  • INSTANCE_ID: l'ID istanza Spanner
  • TABLE_ID: ID della tabella Spanner

Avro da Cloud Storage a Bigtable

Il modello Avro di Cloud Storage per Bigtable è una pipeline che legge i dati dai file Avro in un bucket Cloud Storage e scrive i dati in una tabella Bigtable. Puoi utilizzare il modello per copiare dati da Cloud Storage in Bigtable.

Requisiti per questa pipeline:

  • La tabella Bigtable deve esistere e avere le stesse famiglie di colonne esportate nei file Avro.
  • I file Avro di input devono esistere in un bucket Cloud Storage prima di eseguire la pipeline.
  • Bigtable prevede uno schema specifico dai file Avro di input.

Parametri del modello

Parametro Descrizione
bigtableProjectId L'ID del progetto Google Cloud dell'istanza Bigtable in cui vuoi scrivere i dati.
bigtableInstanceId L'ID dell'istanza Bigtable che contiene la tabella.
bigtableTableId L'ID della tabella Bigtable da importare.
inputFilePattern Il pattern del percorso Cloud Storage in cui si trovano i dati. Ad esempio, gs://mybucket/somefolder/prefix*.

Esecuzione del file Avro Cloud Storage sul modello Bigtable

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Avro Files on Cloud Storage to Cloud Bigtable template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/VERSION/GCS_Avro_to_Cloud_Bigtable \
    --region REGION_NAME \
    --parameters \
bigtableProjectId=BIGTABLE_PROJECT_ID,\
bigtableInstanceId=INSTANCE_ID,\
bigtableTableId=TABLE_ID,\
inputFilePattern=INPUT_FILE_PATTERN

Sostituisci quanto segue:

  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • BIGTABLE_PROJECT_ID: l'ID del progetto Google Cloud dell'istanza Bigtable di cui vuoi leggere i dati.
  • INSTANCE_ID: l'ID dell'istanza Bigtable che contiene la tabella
  • TABLE_ID: l'ID della tabella Bigtable da esportare
  • INPUT_FILE_PATTERN: pattern del percorso Cloud Storage in cui si trovano i dati, ad esempio gs://mybucket/somefolder/prefix*

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/VERSION/GCS_Avro_to_Cloud_Bigtable
{
   "jobName": "JOB_NAME",
   "parameters": {
       "bigtableProjectId": "BIGTABLE_PROJECT_ID",
       "bigtableInstanceId": "INSTANCE_ID",
       "bigtableTableId": "TABLE_ID",
       "inputFilePattern": "INPUT_FILE_PATTERN",
   },
   "environment": { "zone": "us-central1-f" }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • BIGTABLE_PROJECT_ID: l'ID del progetto Google Cloud dell'istanza Bigtable di cui vuoi leggere i dati.
  • INSTANCE_ID: l'ID dell'istanza Bigtable che contiene la tabella
  • TABLE_ID: l'ID della tabella Bigtable da esportare
  • INPUT_FILE_PATTERN: pattern del percorso Cloud Storage in cui si trovano i dati, ad esempio gs://mybucket/somefolder/prefix*

Da Cloud Storage Avro a Cloud Spanner

I file Avro Cloud Storage al modello Cloud Spanner sono una pipeline batch che legge i file Avro da Cloud Spanner archiviati in Cloud Storage e li importa in un database Cloud Spanner.

Requisiti per questa pipeline:

  • Il database Cloud Spanner di destinazione deve esistere e deve essere vuoto.
  • Devi disporre delle autorizzazioni di lettura per il bucket Cloud Storage e le autorizzazioni di scrittura per il database Cloud Spanner di destinazione.
  • Il percorso di Cloud Storage di input deve esistere e deve includere un file spanner-export.json contenente una descrizione JSON dei file da importare.

Parametri del modello

Parametro Descrizione
instanceId L'ID istanza del database Cloud Spanner.
databaseId L'ID del database Cloud Spanner.
inputDir Percorso di Cloud Storage da cui vengono importati i file Avro.

Esecuzione di un modello Avro da Cloud Storage a Cloud Spanner

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.

    Affinché il job venga visualizzato nella pagina Istanze di Spanner della console, il nome del job deve corrispondere al seguente formato:

    cloud-spanner-import-SPANNER_INSTANCE_ID-SPANNER_DATABASE_NAME

    Sostituisci quanto segue:

    • SPANNER_INSTANCE_ID: ID istanza Spanner
    • SPANNER_DATABASE_NAME: nome del database Spanner
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Avro Files on Cloud Storage to Cloud Spanner template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/VERSION/GCS_Avro_to_Cloud_Spanner \
    --region REGION_NAME \
    --staging-location GCS_STAGING_LOCATION \
    --parameters \
instanceId=INSTANCE_ID,\
databaseId=DATABASE_ID,\
inputDir=GCS_DIRECTORY

Sostituisci quanto segue:

  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs:// Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • INSTANCE_ID: ID dell'istanza Spanner che contiene il database
  • DATABASE_ID: ID del database Spanner in cui eseguire l'importazione
  • GCS_DIRECTORY: percorso di Cloud Storage da cui vengono importati i file Avro, ad esempio gs://mybucket/somefolder

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/VERSION/GCS_Avro_to_Cloud_Spanner
{
   "jobName": "JOB_NAME",
   "parameters": {
       "instanceId": "INSTANCE_ID",
       "databaseId": "DATABASE_ID",
       "inputDir": "gs://GCS_DIRECTORY"
   },
   "environment": {
       "machineType": "n1-standard-2"
   }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs:// Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs://Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • INSTANCE_ID: ID dell'istanza Spanner che contiene il database
  • DATABASE_ID: ID del database Spanner in cui eseguire l'importazione
  • GCS_DIRECTORY: percorso di Cloud Storage da cui vengono importati i file Avro, ad esempio gs://mybucket/somefolder

Da Cloud Storage Parquet a Bigtable

Il modello da Parquet di Cloud Storage a Bigtable è una pipeline che legge i dati dai file Parquet in un bucket Cloud Storage e scrive i dati in una tabella Bigtable. Puoi utilizzare il modello per copiare dati da Cloud Storage in Bigtable.

Requisiti per questa pipeline:

  • La tabella Bigtable deve esistere e avere le stesse famiglie di colonne esportate nei file Parquet.
  • I file Parquet di input devono esistere in un bucket Cloud Storage prima di eseguire la pipeline.
  • Bigtable prevede uno schema specifico dai file Parquet di input.

Parametri del modello

Parametro Descrizione
bigtableProjectId L'ID del progetto Google Cloud dell'istanza Bigtable in cui vuoi scrivere i dati.
bigtableInstanceId L'ID dell'istanza Bigtable che contiene la tabella.
bigtableTableId L'ID della tabella Bigtable da importare.
inputFilePattern Il pattern del percorso Cloud Storage in cui si trovano i dati. Ad esempio, gs://mybucket/somefolder/prefix*.

Esecuzione del file Parquet di Cloud Storage su modello Bigtable

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Parquet Files on Cloud Storage to Cloud Bigtable template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/VERSION/GCS_Parquet_to_Cloud_Bigtable \
    --region REGION_NAME \
    --parameters \
bigtableProjectId=BIGTABLE_PROJECT_ID,\
bigtableInstanceId=INSTANCE_ID,\
bigtableTableId=TABLE_ID,\
inputFilePattern=INPUT_FILE_PATTERN

Sostituisci quanto segue:

  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs://Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • BIGTABLE_PROJECT_ID: l'ID del progetto Google Cloud dell'istanza Bigtable di cui vuoi leggere i dati.
  • INSTANCE_ID: l'ID dell'istanza Bigtable che contiene la tabella
  • TABLE_ID: l'ID della tabella Bigtable da esportare
  • INPUT_FILE_PATTERN: pattern del percorso Cloud Storage in cui si trovano i dati, ad esempio gs://mybucket/somefolder/prefix*

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/VERSION/GCS_Parquet_to_Cloud_Bigtable
{
   "jobName": "JOB_NAME",
   "parameters": {
       "bigtableProjectId": "BIGTABLE_PROJECT_ID",
       "bigtableInstanceId": "INSTANCE_ID",
       "bigtableTableId": "TABLE_ID",
       "inputFilePattern": "INPUT_FILE_PATTERN",
   },
   "environment": { "zone": "us-central1-f" }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • BIGTABLE_PROJECT_ID: l'ID del progetto Google Cloud dell'istanza Bigtable di cui vuoi leggere i dati.
  • INSTANCE_ID: l'ID dell'istanza Bigtable che contiene la tabella
  • TABLE_ID: l'ID della tabella Bigtable da esportare
  • INPUT_FILE_PATTERN: pattern del percorso Cloud Storage in cui si trovano i dati, ad esempio gs://mybucket/somefolder/prefix*

SequenzaFile Cloud Storage in Bigtable

Il modello di sequenza di Cloud Storage verso Bigtable è una pipeline che legge i dati di SequenzaFile in un bucket Cloud Storage e scrive i dati in una tabella Bigtable. Puoi utilizzare il modello per copiare dati da Cloud Storage in Bigtable.

Requisiti per questa pipeline:

  • La tabella Bigtable deve esistere.
  • Prima di eseguire la pipeline, il file di sequenza di input deve esistere in un bucket Cloud Storage.
  • L'input SequenzaFile deve essere stato esportato da Bigtable o HBase.

Parametri del modello

Parametro Descrizione
bigtableProject L'ID del progetto Google Cloud dell'istanza Bigtable in cui vuoi scrivere i dati.
bigtableInstanceId L'ID dell'istanza Bigtable che contiene la tabella.
bigtableTableId L'ID della tabella Bigtable da importare.
bigtableAppProfileId L'ID del profilo dell'applicazione Bigtable da utilizzare per l'importazione. Se non specifichi un profilo dell'app, Bigtable utilizza il profilo dell'app predefinito dell'istanza.
sourcePattern Il pattern del percorso Cloud Storage in cui si trovano i dati. Ad esempio, gs://mybucket/somefolder/prefix*.

Esecuzione del modello di sequenza di Cloud Storage in Bigtable

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the SequenceFile Files on Cloud Storage to Cloud Bigtable template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/VERSION/GCS_SequenceFile_to_Cloud_Bigtable \
    --region REGION_NAME \
    --parameters \
bigtableProject=BIGTABLE_PROJECT_ID,\
bigtableInstanceId=INSTANCE_ID,\
bigtableTableId=TABLE_ID,\
bigtableAppProfileId=APPLICATION_PROFILE_ID,\
sourcePattern=SOURCE_PATTERN

Sostituisci quanto segue:

  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs:// Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs://Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • BIGTABLE_PROJECT_ID: l'ID del progetto Google Cloud dell'istanza Bigtable di cui vuoi leggere i dati.
  • INSTANCE_ID: l'ID dell'istanza Bigtable che contiene la tabella
  • TABLE_ID: l'ID della tabella Bigtable da esportare
  • APPLICATION_PROFILE_ID: ID del profilo dell'applicazione Bigtable da utilizzare per l'esportazione
  • SOURCE_PATTERN: pattern del percorso Cloud Storage in cui si trovano i dati, ad esempio gs://mybucket/somefolder/prefix*

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/VERSION/GCS_SequenceFile_to_Cloud_Bigtable
{
   "jobName": "JOB_NAME",
   "parameters": {
       "bigtableProject": "BIGTABLE_PROJECT_ID",
       "bigtableInstanceId": "INSTANCE_ID",
       "bigtableTableId": "TABLE_ID",
       "bigtableAppProfileId": "APPLICATION_PROFILE_ID",
       "sourcePattern": "SOURCE_PATTERN",
   },
   "environment": { "zone": "us-central1-f" }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs://Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • BIGTABLE_PROJECT_ID: l'ID del progetto Google Cloud dell'istanza Bigtable di cui vuoi leggere i dati.
  • INSTANCE_ID: l'ID dell'istanza Bigtable che contiene la tabella
  • TABLE_ID: l'ID della tabella Bigtable da esportare
  • APPLICATION_PROFILE_ID: ID del profilo dell'applicazione Bigtable da utilizzare per l'esportazione
  • SOURCE_PATTERN: pattern del percorso Cloud Storage in cui si trovano i dati, ad esempio gs://mybucket/somefolder/prefix*

Testo Cloud Storage in BigQuery

La pipeline Cloud Text to BigQuery è una pipeline batch che consente di leggere i file di testo archiviati in Cloud Storage, trasformarli mediante una funzione definita dall'utente JavaScript (UDF) da te fornita e aggiungere il risultato a una tabella BigQuery.

Requisiti per questa pipeline:

  • Crea un file JSON che descriva lo schema BigQuery.

    Assicurati che sia presente un array JSON di primo livello denominato BigQuery Schema e che i suoi contenuti seguano il pattern {"name": "COLUMN_NAME", "type": "DATA_TYPE"}.

    Il modello batch di Cloud Storage Text to BigQuery non supporta l'importazione dei dati nei campi STRUCT (Record) della tabella BigQuery di destinazione.

    Il seguente JSON descrive un esempio di schema BigQuery:

    {
      "BigQuery Schema": [
        {
          "name": "location",
          "type": "STRING"
        },
        {
          "name": "name",
          "type": "STRING"
        },
        {
          "name": "age",
          "type": "STRING"
        },
        {
          "name": "color",
          "type": "STRING"
        },
        {
          "name": "coffee",
          "type": "STRING"
        }
      ]
    }
    
  • Crea un file JavaScript (.js) con la funzione UDF che fornisca la logica per trasformare le righe di testo. La funzione deve restituire una stringa JSON.

    Ad esempio, questa funzione suddivide ogni riga di un file CSV e restituisce una stringa JSON dopo aver trasformato i valori.

    function transform(line) {
    var values = line.split(',');
    
    var obj = new Object();
    obj.location = values[0];
    obj.name = values[1];
    obj.age = values[2];
    obj.color = values[3];
    obj.coffee = values[4];
    var jsonString = JSON.stringify(obj);
    
    return jsonString;
    }

Parametri del modello

Parametro Descrizione
javascriptTextTransformFunctionName Il nome della funzione definita dall'utente JavaScript che intendi utilizzare. Ad esempio, se il codice funzione JavaScript è myTransform(inJson) { /*...do stuff...*/ }, il nome della funzione è myTransform. Per esempi di UDF JavaScript di esempio, consulta Esempi di UDF.
JSONPath Il percorso gs:// al file JSON che definisce lo schema BigQuery, archiviato in Cloud Storage. Ad esempio, gs://path/to/my/schema.json.
javascriptTextTransformGcsPath L'URI Cloud Storage del file .js che definisce la funzione definita dall'utente JavaScript (UDF) che vuoi utilizzare. Ad esempio: gs://my-bucket/my-udfs/my_file.js.
inputFilePattern Il percorso gs:// del testo in Cloud Storage che vuoi elaborare. Ad esempio, gs://path/to/my/text/data.txt.
outputTable Il nome della tabella BigQuery in cui vuoi creare per archiviare i dati elaborati. Se riutilizzi una tabella BigQuery esistente, i dati vengono aggiunti alla tabella di destinazione. Ad esempio, my-project-name:my-dataset.my-table.
bigQueryLoadingTemporaryDirectory La directory temporanea per il processo di caricamento di BigQuery. Ad esempio, gs://my-bucket/my-files/temp_dir.

Esecuzione del modello Cloud Storage Text to BigQuery

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Text Files on Cloud Storage to BigQuery (Batch) template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/VERSION/GCS_Text_to_BigQuery \
    --region REGION_NAME \
    --parameters \
javascriptTextTransformFunctionName=JAVASCRIPT_FUNCTION,\
JSONPath=PATH_TO_BIGQUERY_SCHEMA_JSON,\
javascriptTextTransformGcsPath=PATH_TO_JAVASCRIPT_UDF_FILE,\
inputFilePattern=PATH_TO_TEXT_DATA,\
outputTable=BIGQUERY_TABLE,\
bigQueryLoadingTemporaryDirectory=PATH_TO_TEMP_DIR_ON_GCS

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs:// Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • JAVASCRIPT_FUNCTION: Il nome della funzione definita dall'utente JavaScript che vuoi utilizzare

    Ad esempio, se il codice funzione JavaScript è myTransform(inJson) { /*...do stuff...*/ }, il nome della funzione è myTransform. Per esempi di UDF JavaScript di esempio, consulta Esempi di UDF.

  • PATH_TO_BIGQUERY_SCHEMA_JSON: percorso Cloud Storage del file JSON contenente la definizione dello schema
  • PATH_TO_JAVASCRIPT_UDF_FILE: L'URI Cloud Storage del file .js che definisce la funzione JavaScript definita dall'utente (UDF) che vuoi utilizzare, ad esempio gs://my-bucket/my-udfs/my_file.js
  • PATH_TO_TEXT_DATA: percorso di Cloud Storage al tuo set di dati di testo
  • BIGQUERY_TABLE: nome della tabella BigQuery
  • PATH_TO_TEMP_DIR_ON_GCS: percorso di Cloud Storage alla directory temporanea

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/VERSION/GCS_Text_to_BigQuery
{
   "jobName": "JOB_NAME",
   "parameters": {
       "javascriptTextTransformFunctionName": "JAVASCRIPT_FUNCTION",
       "JSONPath": "PATH_TO_BIGQUERY_SCHEMA_JSON",
       "javascriptTextTransformGcsPath": "PATH_TO_JAVASCRIPT_UDF_FILE",
       "inputFilePattern":"PATH_TO_TEXT_DATA",
       "outputTable":"BIGQUERY_TABLE",
       "bigQueryLoadingTemporaryDirectory": "PATH_TO_TEMP_DIR_ON_GCS"
   },
   "environment": { "zone": "us-central1-f" }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs:// Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • JAVASCRIPT_FUNCTION: Il nome della funzione definita dall'utente JavaScript che vuoi utilizzare

    Ad esempio, se il codice funzione JavaScript è myTransform(inJson) { /*...do stuff...*/ }, il nome della funzione è myTransform. Per esempi di UDF JavaScript di esempio, consulta Esempi di UDF.

  • PATH_TO_BIGQUERY_SCHEMA_JSON: percorso Cloud Storage del file JSON contenente la definizione dello schema
  • PATH_TO_JAVASCRIPT_UDF_FILE: L'URI Cloud Storage del file .js che definisce la funzione JavaScript definita dall'utente (UDF) che vuoi utilizzare, ad esempio gs://my-bucket/my-udfs/my_file.js
  • PATH_TO_TEXT_DATA: percorso di Cloud Storage al tuo set di dati di testo
  • BIGQUERY_TABLE: nome della tabella BigQuery
  • PATH_TO_TEMP_DIR_ON_GCS: percorso di Cloud Storage alla directory temporanea

Testo Cloud Storage in Datastore [Deprecato]

Questo modello è ritirato e verrà rimosso nel primo trimestre del 2022. Esegui la migrazione al modello Cloud Storage Text to Firestore.

Il modello Cloud Storage Text in Datastore è una pipeline batch che legge dai file di testo archiviati in Cloud Storage e scrive entità con codifica JSON in Datastore. Ogni riga nei file di testo di input deve essere nel formato JSON specificato.

Requisiti per questa pipeline:

  • Datastore deve essere abilitato nel progetto di destinazione.

Parametri del modello

Parametro Descrizione
textReadPattern Un pattern del percorso Cloud Storage che specifica la posizione dei file di dati inseriti nel testo. Ad esempio, gs://mybucket/somepath/*.json.
javascriptTextTransformGcsPath (Facoltativo) L'URI Cloud Storage del file .js che definisce la funzione definita dall'utente JavaScript (UDF) che vuoi utilizzare. Ad esempio: gs://my-bucket/my-udfs/my_file.js.
javascriptTextTransformFunctionName (Facoltativo) Il nome della funzione definita dall'utente JavaScript che vuoi utilizzare. Ad esempio, se il codice funzione JavaScript è myTransform(inJson) { /*...do stuff...*/ }, il nome della funzione è myTransform. Per esempi di UDF JavaScript di esempio, consulta Esempi di UDF.
datastoreWriteProjectId L'ID progetto Google Cloud in cui scrivere le entità di Datastore
datastoreHintNumWorkers (Facoltativo) Suggerimento per il numero previsto di worker nel passaggio di limitazione della velocità effettiva di Datastore. Il valore predefinito è 500.
errorWritePath Il file di output del log degli errori da utilizzare per gli errori di scrittura che si verificano durante l'elaborazione. Ad esempio, gs://bucket-name/errors.txt.

Esecuzione del modello Cloud Storage Text to Datastore

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Text Files on Cloud Storage to Datastore template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/VERSION/GCS_Text_to_Datastore \
    --region REGION_NAME \
    --parameters \
textReadPattern=PATH_TO_INPUT_TEXT_FILES,\
javascriptTextTransformGcsPath=PATH_TO_JAVASCRIPT_UDF_FILE,\
javascriptTextTransformFunctionName=JAVASCRIPT_FUNCTION,\
datastoreWriteProjectId=PROJECT_ID,\
errorWritePath=ERROR_FILE_WRITE_PATH

Sostituisci quanto segue:

  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • PATH_TO_INPUT_TEXT_FILES: il pattern dei file di input su Cloud Storage
  • JAVASCRIPT_FUNCTION: Il nome della funzione definita dall'utente JavaScript che vuoi utilizzare

    Ad esempio, se il codice funzione JavaScript è myTransform(inJson) { /*...do stuff...*/ }, il nome della funzione è myTransform. Per esempi di UDF JavaScript di esempio, consulta Esempi di UDF.

  • PATH_TO_JAVASCRIPT_UDF_FILE: L'URI Cloud Storage del file .js che definisce la funzione JavaScript definita dall'utente (UDF) che vuoi utilizzare, ad esempio gs://my-bucket/my-udfs/my_file.js
  • ERROR_FILE_WRITE_PATH: il percorso verso il file di errore che preferisci su Cloud Storage

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/VERSION/GCS_Text_to_Datastore
{
   "jobName": "JOB_NAME",
   "parameters": {
       "textReadPattern": "PATH_TO_INPUT_TEXT_FILES",
       "javascriptTextTransformGcsPath": "PATH_TO_JAVASCRIPT_UDF_FILE",
       "javascriptTextTransformFunctionName": "JAVASCRIPT_FUNCTION",
       "datastoreWriteProjectId": "PROJECT_ID",
       "errorWritePath": "ERROR_FILE_WRITE_PATH"
   },
   "environment": { "zone": "us-central1-f" }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • PATH_TO_INPUT_TEXT_FILES: il pattern dei file di input su Cloud Storage
  • JAVASCRIPT_FUNCTION: Il nome della funzione definita dall'utente JavaScript che vuoi utilizzare

    Ad esempio, se il codice funzione JavaScript è myTransform(inJson) { /*...do stuff...*/ }, il nome della funzione è myTransform. Per esempi di UDF JavaScript di esempio, consulta Esempi di UDF.

  • PATH_TO_JAVASCRIPT_UDF_FILE: L'URI Cloud Storage del file .js che definisce la funzione JavaScript definita dall'utente (UDF) che vuoi utilizzare, ad esempio gs://my-bucket/my-udfs/my_file.js
  • ERROR_FILE_WRITE_PATH: il percorso verso il file di errore che preferisci su Cloud Storage

Testo Cloud Storage in Firestore

Il modello Cloud Storage Text to Firestore è una pipeline batch che legge dai file di testo archiviati in Cloud Storage e scrive entità con codifica JSON in Firestore. Ogni riga nei file di testo di input deve essere nel formato JSON specificato.

Requisiti per questa pipeline:

  • Firestore deve essere abilitato nel progetto di destinazione.

Parametri del modello

Parametro Descrizione
textReadPattern Un pattern del percorso Cloud Storage che specifica la posizione dei file di dati inseriti nel testo. Ad esempio, gs://mybucket/somepath/*.json.
javascriptTextTransformGcsPath (Facoltativo) L'URI Cloud Storage del file .js che definisce la funzione definita dall'utente JavaScript (UDF) che vuoi utilizzare. Ad esempio: gs://my-bucket/my-udfs/my_file.js.
javascriptTextTransformFunctionName (Facoltativo) Il nome della funzione definita dall'utente JavaScript che vuoi utilizzare. Ad esempio, se il codice funzione JavaScript è myTransform(inJson) { /*...do stuff...*/ }, il nome della funzione è myTransform. Per esempi di UDF JavaScript di esempio, consulta Esempi di UDF.
firestoreWriteProjectId L'ID progetto Google Cloud in cui scrivere le entità Firestore
firestoreHintNumWorkers (Facoltativo) Suggerimento per il numero previsto di worker nel passaggio di limitazione della rampa di Firestore. Il valore predefinito è 500.
errorWritePath Il file di output del log degli errori da utilizzare per gli errori di scrittura che si verificano durante l'elaborazione. Ad esempio, gs://bucket-name/errors.txt.

Esecuzione del modello Cloud Storage Text in Firestore

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Text Files on Cloud Storage to Firestore template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/VERSION/GCS_Text_to_Firestore \
    --region REGION_NAME \
    --parameters \
textReadPattern=PATH_TO_INPUT_TEXT_FILES,\
javascriptTextTransformGcsPath=PATH_TO_JAVASCRIPT_UDF_FILE,\
javascriptTextTransformFunctionName=JAVASCRIPT_FUNCTION,\
firestoreWriteProjectId=PROJECT_ID,\
errorWritePath=ERROR_FILE_WRITE_PATH

Sostituisci quanto segue:

  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • PATH_TO_INPUT_TEXT_FILES: il pattern dei file di input su Cloud Storage
  • JAVASCRIPT_FUNCTION: Il nome della funzione definita dall'utente JavaScript che vuoi utilizzare

    Ad esempio, se il codice funzione JavaScript è myTransform(inJson) { /*...do stuff...*/ }, il nome della funzione è myTransform. Per esempi di UDF JavaScript di esempio, consulta Esempi di UDF.

  • PATH_TO_JAVASCRIPT_UDF_FILE: L'URI Cloud Storage del file .js che definisce la funzione JavaScript definita dall'utente (UDF) che vuoi utilizzare, ad esempio gs://my-bucket/my-udfs/my_file.js
  • ERROR_FILE_WRITE_PATH: il percorso verso il file di errore che preferisci su Cloud Storage

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/VERSION/GCS_Text_to_Firestore
{
   "jobName": "JOB_NAME",
   "parameters": {
       "textReadPattern": "PATH_TO_INPUT_TEXT_FILES",
       "javascriptTextTransformGcsPath": "PATH_TO_JAVASCRIPT_UDF_FILE",
       "javascriptTextTransformFunctionName": "JAVASCRIPT_FUNCTION",
       "firestoreWriteProjectId": "PROJECT_ID",
       "errorWritePath": "ERROR_FILE_WRITE_PATH"
   },
   "environment": { "zone": "us-central1-f" }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs:// Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs://Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • PATH_TO_INPUT_TEXT_FILES: il pattern dei file di input su Cloud Storage
  • JAVASCRIPT_FUNCTION: Il nome della funzione definita dall'utente JavaScript che vuoi utilizzare

    Ad esempio, se il codice funzione JavaScript è myTransform(inJson) { /*...do stuff...*/ }, il nome della funzione è myTransform. Per esempi di UDF JavaScript di esempio, consulta Esempi di UDF.

  • PATH_TO_JAVASCRIPT_UDF_FILE: L'URI Cloud Storage del file .js che definisce la funzione JavaScript definita dall'utente (UDF) che vuoi utilizzare, ad esempio gs://my-bucket/my-udfs/my_file.js
  • ERROR_FILE_WRITE_PATH: il percorso verso il file di errore che preferisci su Cloud Storage

Testo Cloud Storage in Pub/Sub (batch)

Questo modello crea una pipeline batch che legge i record dei file di testo archiviati in Cloud Storage e li pubblica in un argomento Pub/Sub. Il modello può essere utilizzato per pubblicare record in un file delimitato da nuova riga contenente record JSON o file CSV in un argomento Pub/Sub per l'elaborazione in tempo reale. Puoi utilizzare questo modello per riprodurre i dati in Pub/Sub.

Questo modello non imposta un timestamp per i singoli record. Il tempo dell'evento equivale al tempo di pubblicazione durante l'esecuzione. Se la tua pipeline si basa su un tempo di evento preciso per l'elaborazione, non devi utilizzare questa pipeline.

Requisiti per questa pipeline:

  • I file da leggere devono essere in formato JSON delimitato da nuova riga o in formato CSV. I record che coprono più righe nei file di origine potrebbero causare problemi a valle perché ogni riga all'interno dei file verrà pubblicata come messaggio in Pub/Sub.
  • L'argomento Pub/Sub deve esistere prima dell'esecuzione della pipeline.

Parametri del modello

Parametro Descrizione
inputFilePattern Il pattern del file di input da cui leggere. Ad esempio, gs://bucket-name/files/*.json.
outputTopic L'argomento di input di Pub/Sub in cui scrivere. Il nome deve essere nel formato projects/<project-id>/topics/<topic-name>.

Esecuzione del modello di testo Cloud Storage in Pub/Sub (batch)

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Text Files on Cloud Storage to Pub/Sub (Batch) template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/VERSION/GCS_Text_to_Cloud_PubSub \
    --region REGION_NAME \
    --parameters \
inputFilePattern=gs://BUCKET_NAME/files/*.json,\
outputTopic=projects/PROJECT_ID/topics/TOPIC_NAME

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • TOPIC_NAME: nome dell'argomento Pub/Sub
  • BUCKET_NAME: il nome del tuo bucket Cloud Storage

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/VERSION/GCS_Text_to_Cloud_PubSub
{
   "jobName": "JOB_NAME",
   "parameters": {
       "inputFilePattern": "gs://BUCKET_NAME/files/*.json",
       "outputTopic": "projects/PROJECT_ID/topics/TOPIC_NAME"
   },
   "environment": { "zone": "us-central1-f" }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs://Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • TOPIC_NAME: nome dell'argomento Pub/Sub
  • BUCKET_NAME: il nome del tuo bucket Cloud Storage

Testo Cloud Storage in Cloud Spanner

Il modello Cloud Storage Text to Cloud Spanner è una pipeline batch che legge i file di testo CSV da Cloud Storage e li importa in un database Cloud Spanner.

Requisiti per questa pipeline:

  • Deve esistere il database e la tabella Cloud Spanner di destinazione.
  • Devi disporre delle autorizzazioni di lettura per il bucket Cloud Storage e le autorizzazioni di scrittura per il database Cloud Spanner di destinazione.
  • Deve esistere il percorso di Cloud Storage di input che contiene i file CSV.
  • Devi creare un file manifest di importazione contenente una descrizione JSON dei file CSV e archiviarlo in Cloud Storage.
  • Se il database Cloud Spanner di destinazione ha già uno schema, le colonne specificate nel file manifest devono avere gli stessi tipi di dati delle colonne corrispondenti nello schema del database di destinazione.
  • Il file manifest, codificato in ASCII o UTF-8, deve corrispondere al seguente formato:

  • I file di testo da importare devono essere in formato CSV, con codifica ASCII o UTF-8. Ti consigliamo di non utilizzare il byte order mark (BOM) nei file con codifica UTF-8.
  • I dati devono corrispondere a uno dei seguenti tipi:

    SQL standard di Google

        BOOL
        INT64
        FLOAT64
        NUMERIC
        STRING
        DATE
        TIMESTAMP
        BYPES
        JSON

    PostgreSQL

        boolean
        bigint
        double precision
        numeric
        character varying, text
        date
        timestamp with time zone
        bytea

Parametri del modello

Parametro Descrizione
instanceId L'ID istanza del database Cloud Spanner.
databaseId L'ID del database Cloud Spanner.
importManifest Percorso di Cloud Storage al file manifest di importazione.
columnDelimiter Il delimitatore di colonna utilizzato dal file di origine. Il valore predefinito è ,.
fieldQualifier Il carattere che deve racchiudere qualsiasi valore nel file di origine che contiene columnDelimiter. Il valore predefinito è ".
trailingDelimiter Specifica se le righe nei file di origine hanno delimitatori finali (ovvero, se il carattere columnDelimiter appare alla fine di ogni riga, dopo l'ultimo valore della colonna). Il valore predefinito è true.
escape Il carattere di escape utilizzato dal file di origine. Per impostazione predefinita, questo parametro non è impostato e il modello non utilizza il carattere di escape.
nullString La stringa che rappresenta un valore NULL. Per impostazione predefinita, questo parametro non è impostato e il modello non utilizza la stringa null.
dateFormat Il formato utilizzato per analizzare le colonne della data. Per impostazione predefinita, la pipeline tenta di analizzare le colonne della data come yyyy-M-d[' 00:00:00'], ad esempio 2019-01-31 o 2019-1-1 00:00:00. Se il formato della data è diverso, specifica il formato utilizzando i pattern java.time.format.DateTimeFormatter.
timestampFormat Il formato utilizzato per analizzare le colonne del timestamp. Se il timestamp è un numero intero lungo, viene analizzato come ora Unix. In caso contrario, viene analizzato come una stringa utilizzando il formato java.time.format.DateTimeFormatter.ISO_INSTANT. Per altri casi, specifica la tua stringa di pattern, ad esempio utilizzando MMM dd yyyy HH:mm:ss.SSSVV per i timestamp nel formato "Jan 21 1998 01:02:03.456+08:00".

Se devi utilizzare formati di data e timestamp personalizzati, assicurati che siano modelli java.time.format.DateTimeFormatter validi. La tabella seguente mostra altri esempi di formati personalizzati per le colonne delle date e dei timestamp:

Tipo Valore di input Formato Commento
DATE 2011-3-31 Per impostazione predefinita, il modello può analizzare questo formato. Non è necessario specificare il parametro dateFormat.
DATE 2022-3-31 00:00:00 Per impostazione predefinita, il modello può analizzare questo formato. Non devi specificare il formato. Se vuoi, puoi usare yyyy-M-d' 00:00:00'.
DATE 1 aprile 18 gg MMM, yy
DATE Mercoledì 3 aprile 2019 AD EEEE, LLLL g, aaaa G
TIMESTAMP 2019-01-02T11:22:33Z
2019-01-02T11:22:33.123Z
2019-01-02T11:22:33.12356789Z
Il formato predefinito ISO_INSTANT può analizzare questo tipo di timestamp. Non è necessario fornire il parametro timestampFormat.
TIMESTAMP 1568402363 Per impostazione predefinita, il modello può analizzare questo tipo di timestamp e considerarlo come tempo Unix.
TIMESTAMP mar 3 giu 2008 11:05:30 GMT EEE, g MMM aaaa HH:mm:ss VV
TIMESTAMP 31/12/2018 110530.123PST aaaa/mm/gg HHmmss.SSSz
TIMESTAMP 2019-01-02T11:22:33Z o 2019-01-02T11:22:33.123Z aaaa-MM-gg'T'HH:mm:ss[.SSS]VV Se la colonna di input è una combinazione di 2019-01-02T11:22:33Z e 2019-01-02T11:22:33.123Z, il formato predefinito può analizzare questo tipo di timestamp. Non è necessario fornire un parametro di formattazione personalizzato. Puoi utilizzare yyyy-MM-dd'T'HH:mm:ss[.SSS]VV per gestire entrambi i casi. Non puoi utilizzare yyyy-MM-dd'T'HH:mm:ss[.SSS]'Z', perché postfix 'Z' deve essere analizzato come ID del fuso orario, non come valore letterale carattere. Internamente, la colonna timestamp è convertita in java.time.Instant. Di conseguenza, deve essere specificato nel fuso orario UTC o avere informazioni sul fuso orario associate. La data e l'ora locali, ad esempio 2019-01-02 11:22:33, non possono essere analizzate come valori java.time.Instant validi.

Esecuzione dei file di testo da Cloud Storage a un modello Cloud Spanner

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Text Files on Cloud Storage to Cloud Spanner template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. 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/VERSION/GCS_Text_to_Cloud_Spanner \
    --region REGION_NAME \
    --parameters \
instanceId=INSTANCE_ID,\
databaseId=DATABASE_ID,\
importManifest=GCS_PATH_TO_IMPORT_MANIFEST

Sostituisci quanto segue:

  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs:// Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • INSTANCE_ID: ID dell'istanza Cloud Spanner
  • DATABASE_ID: ID del database Cloud Spanner
  • GCS_PATH_TO_IMPORT_MANIFEST: percorso Cloud Storage del file manifest di importazione

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates/VERSION/GCS_Text_to_Cloud_Spanner
{
   "jobName": "JOB_NAME",
   "parameters": {
       "instanceId": "INSTANCE_ID",
       "databaseId": "DATABASE_ID",
       "importManifest": "GCS_PATH_TO_IMPORT_MANIFEST"
   },
   "environment": {
       "machineType": "n1-standard-2"
   }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • INSTANCE_ID: ID dell'istanza Cloud Spanner
  • DATABASE_ID: ID del database Cloud Spanner
  • GCS_PATH_TO_IMPORT_MANIFEST: percorso Cloud Storage del file manifest di importazione

Da Cloud Storage a Elasticsearch

Il modello Cloud Storage to Elasticsearch è una pipeline batch che legge i dati dei file CSV archiviati in un bucket Cloud Storage e li scrive in documenti Elasticsearch come documenti JSON.

Requisiti per questa pipeline:

  • Deve esistere il bucket Cloud Storage.
  • Deve esistere un host Elasticsearch su un'istanza GCP o su Elasticsearch Cloud accessibile da Dataflow.
  • Deve esistere una tabella BigQuery per l'output di errore.

Parametri del modello

Parametro Descrizione
inputFileSpec Il pattern di file Cloud Storage per cercare file CSV. Esempio: gs://mybucket/test-*.csv.
connectionUrl URL Elasticsearch nel formato https://hostname:[port] o specifica CloudID se utilizzi Elastic Cloud.
apiKey Chiave API codificata Base64 utilizzata per l'autenticazione.
index L'indice Elasticsearch per il quale saranno inviate le richieste, ad esempio my-index.
deadletterTable Tabella Dead BigQuery di BigQuery per l'invio di inserimenti non riusciti. Esempio: <your-project>:<your-dataset>.<your-table-name>.
containsHeaders (Facoltativo) Valore booleano che indica se le intestazioni sono incluse nel file CSV. Valore predefinito: true.
delimiter (Facoltativo) Il delimitatore utilizzato dal file CSV. Esempio: ,
csvFormat (Facoltativo) Il formato CSV in base al formato CSV Apache Commons. Valore predefinito: Default.
jsonSchemaPath (Facoltativo) Percorso dello schema JSON. Valore predefinito: null.
largeNumFiles (Facoltativo) Imposta su true se il numero di file è compreso tra decine di migliaia. Valore predefinito: false.
javascriptTextTransformGcsPath (Facoltativo) L'URI Cloud Storage del file .js che definisce la funzione definita dall'utente JavaScript (UDF) che vuoi utilizzare. Ad esempio: gs://my-bucket/my-udfs/my_file.js.
javascriptTextTransformFunctionName (Facoltativo) Il nome della funzione definita dall'utente JavaScript che vuoi utilizzare. Ad esempio, se il codice funzione JavaScript è myTransform(inJson) { /*...do stuff...*/ }, il nome della funzione è myTransform. Per esempi di UDF JavaScript di esempio, consulta Esempi di UDF.
batchSize (Facoltativo) Dimensioni batch nel numero di documenti. Valore predefinito: 1000.
batchSizeBytes (Facoltativo) Dimensioni batch in numero di byte. Valore predefinito: 5242880 (5 MB).
maxRetryAttempts (Facoltativo) Numero massimo di nuovi tentativi, il valore deve essere > 0. Predefinito: nessun nuovo tentativo.
maxRetryDuration (Facoltativo) La durata massima per il nuovo tentativo, espressa in millisecondi, deve essere > 0. Predefinito: nessun nuovo tentativo.
csvFileEncoding (Facoltativo) Codifica dei file CSV.

Esecuzione del modello Cloud Storage to Elasticsearch

console

  1. Vai alla pagina Dataflow Crea job da modello.
  2. Vai a Crea job da modello
  3. Nel campo Nome job, inserisci un nome univoco.
  4. (Facoltativo) Per Endpoint regionale, seleziona un valore dal menu a discesa. L'endpoint regionale predefinito è us-central1.

    Per un elenco delle aree geografiche in cui puoi eseguire un job Dataflow, consulta Località di Dataflow.

  5. Dal menu a discesa Modello Dataflow, seleziona the Cloud Storage to Elasticsearch template.
  6. Inserisci i valori dei parametri nei campi forniti.
  7. Fai clic su Esegui job.

gcloud

Esegui il modello nella shell o nel terminale:

gcloud beta dataflow flex-template run JOB_NAME \
    --project=PROJECT_ID\
    --region=REGION_NAME \
    --template-file-gcs-location=gs://dataflow-templates/VERSION/flex/GCS_To_Elasticsearch \
    --parameters \
inputFileSpec=INPUT_FILE_SPEC,\
connectionUrl=CONNECTION_URL,\
apiKey=APIKEY,\
index=INDEX,\
deadletterTable=DEADLETTER_TABLE,\

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs://Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs:// Dataflow-templates/
  • REGION_NAME: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • INPUT_FILE_SPEC: pattern del file Cloud Storage.
  • CONNECTION_URL: il tuo URL Elasticsearch.
  • APIKEY: la chiave API codificata in Base64 per l'autenticazione.
  • INDEX: il tuo indice Elasticsearch.
  • DEADLETTER_TABLE: la tabella BigQuery.

Server

Per eseguire il modello utilizzando l'API REST, invia una richiesta POST HTTP. Per ulteriori informazioni sull'API e sui suoi ambiti di autorizzazione, consulta projects.templates.launch.

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/flexTemplates:launch
{
   "launch_parameter": {
      "jobName": "JOB_NAME",
      "parameters": {
          "inputFileSpec": "INPUT_FILE_SPEC",
          "connectionUrl": "CONNECTION_URL",
          "apiKey": "APIKEY",
          "index": "INDEX",
          "deadletterTable": "DEADLETTER_TABLE"
      },
      "containerSpecGcsPath": "gs://dataflow-templates/VERSION/flex/GCS_To_Elasticsearch",
   }
}

Sostituisci quanto segue:

  • PROJECT_ID: l'ID progetto cloud in cui vuoi eseguire il job Spanner
  • JOB_NAME: un nome job univoco a tua scelta
  • VERSION: la versione del modello che vuoi utilizzare

    Puoi utilizzare i seguenti valori:

    • latest per utilizzare la versione più recente del modello, disponibile nella cartella principale senza data del bucket: gs:// Dataflow-templates/latest/
    • il nome della versione, come 2021-09-20-00_RC00, per utilizzare una versione specifica del modello, che puoi trovare nidificata nella rispettiva cartella principale con data nel bucket: gs://Dataflow-templates/
  • LOCATION: l'endpoint a livello di area geografica in cui vuoi eseguire il deployment del tuo job Spanner, ad esempio us-central1
  • INPUT_FILE_SPEC: pattern del file Cloud Storage.
  • CONNECTION_URL: il tuo URL Elasticsearch.
  • APIKEY: la chiave API codificata in Base64 per l'autenticazione.
  • INDEX: il tuo indice Elasticsearch.
  • DEADLETTER_TABLE: la tabella BigQuery.