Plantillas por lotes de Dataflow que proporciona Google

Organiza tus páginas con colecciones Guarda y categoriza el contenido según tus preferencias.

Google proporciona un conjunto de plantillas de código abierto de Dataflow.

Estas plantillas de Dataflow pueden ayudarte a resolver grandes tareas de datos, incluidas la importación, la exportación, la copia de seguridad y el restablecimiento de datos, y las operaciones de API masivas, todo sin el uso de un entorno de desarrollo dedicado. Las plantillas se compilan en Apache Beam y usan Dataflow para transformar los datos.

Para obtener información general sobre las plantillas, consulta Plantillas de Dataflow. Para obtener una lista de todas las plantillas proporcionadas por Google, consulta Comienza a usar las plantillas proporcionadas por Google.

En esta guía, se documentan las plantillas por lotes.

BigQuery a TFRecord de Cloud Storage

La plantilla de datos de BigQuery a Cloud Storage en TFRecord es una canalización que lee datos de una consulta de BigQuery y los escribe en un bucket de Cloud Storage en formato TFRecord. Puedes especificar las divisiones de porcentaje de entrenamiento, prueba y validación. De forma predeterminada, la división es 1 o 100% para el conjunto de entrenamiento y 0 o 0% para los conjuntos de prueba y validación. Cuando configuras la división del conjunto de datos, la suma del entrenamiento, la prueba y la validación debe ser hasta 1 o 100% (por ejemplo, 0.6 + 0.2 + 0.2). Dataflow determina de forma automática la cantidad óptima de fragmentos para cada conjunto de datos de salida.

Requisitos para esta canalización:

  • El conjunto de datos y la tabla de BigQuery deben existir.
  • El bucket de Cloud Storage de salida debe existir antes de la ejecución de la canalización. Los subdirectorios de entrenamiento, prueba y validación no necesitan preexistir y se generan automáticamente.

Parámetros de la plantilla

Parámetro Descripción
readQuery Una consulta de BigQuery SQL que extrae datos de la fuente. Por ejemplo, select * from dataset1.sample_table.
outputDirectory El prefijo de ruta de acceso de Cloud Storage de nivel superior en el que se escriben los archivos TFRecord de entrenamiento, prueba y validación. Por ejemplo, gs://mybucket/output. Los subdirectorios de los archivos de TFRecord para la capacitación, la prueba y la validación resultantes se generan automáticamente a partir de outputDirectory. Por ejemplo: gs://mybucket/output/train
trainingPercentage El porcentaje de datos de consulta asignados al entrenamiento de archivos TFRecord (opcional). El valor predeterminado es 1 o 100%.
testingPercentage El porcentaje de datos de consulta asignados para probar archivos TFRecord (opcional). El valor predeterminado es 0 o 0%.
validationPercentage El porcentaje de datos de consulta asignados a los archivos TFRecord de validación (opcional). El valor predeterminado es 0 o 0%.
outputSuffix El sufijo del archivo para los archivos TFRecord de entrenamiento, prueba y validación que se escriben (opcional). El valor predeterminado es .tfrecord.

Ejecuta la plantilla de archivos TFRecord de BigQuery en Cloud Storage

Consola

  1. Ve a la página Crear un trabajo a partir de una plantilla de Dataflow.
  2. Ir a Crear un trabajo a partir de una plantilla
  3. En el campo Nombre del trabajo, ingresa un nombre de trabajo único.
  4. Opcional: Para Extremo regional, selecciona un valor del menú desplegable. El extremo regional predeterminado es us-central1.

    Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.

  5. En el menú desplegable Plantilla de Dataflow, selecciona the BigQuery to TFRecords template.
  6. En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
  7. Haga clic en Ejecutar trabajo.

gcloud

En tu shell o terminal, ejecuta la plantilla:

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

Reemplaza lo siguiente:

  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • REGION_NAME: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • READ_QUERY: Es la consulta de BigQuery que se ejecutará.
  • OUTPUT_DIRECTORY: Es el prefijo de la ruta de acceso de Cloud Storage para los conjuntos de datos de salida
  • TRAINING_PERCENTAGE: Es la división de porcentaje decimal para el conjunto de datos de entrenamiento
  • TESTING_PERCENTAGE: Es la división de porcentaje decimal para el conjunto de datos de prueba
  • VALIDATION_PERCENTAGE: Es la división de porcentaje decimal para el conjunto de datos de validación
  • OUTPUT_FILENAME_SUFFIX: Es el sufijo de archivo de registro de salida de TensorFlow preferido.

API

Para ejecutar la plantilla con la API de REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus permisos de autorización, 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" }
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • LOCATION: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • READ_QUERY: Es la consulta de BigQuery que se ejecutará.
  • OUTPUT_DIRECTORY: Es el prefijo de la ruta de acceso de Cloud Storage para los conjuntos de datos de salida
  • TRAINING_PERCENTAGE: Es la división de porcentaje decimal para el conjunto de datos de entrenamiento
  • TESTING_PERCENTAGE: Es la división de porcentaje decimal para el conjunto de datos de prueba
  • VALIDATION_PERCENTAGE: Es la división de porcentaje decimal para el conjunto de datos de validación
  • OUTPUT_FILENAME_SUFFIX: Es el sufijo de archivo de registro de salida de TensorFlow preferido.

Exportación de BigQuery a Parquet (a través de la API de Storage)

La plantilla de exportación de BigQuery a Parquet es una canalización por lotes que lee datos de una tabla de BigQuery y los escribe en un bucket de Cloud Storage en formato Parquet. Esta plantilla usa la API de BigQuery Storage para exportar los datos.

Requisitos para esta canalización:

  • La tabla de entrada de BigQuery debe existir antes de ejecutar la canalización.
  • El bucket de Cloud Storage de salida debe existir antes de ejecutar la canalización.

Parámetros de la plantilla

Parámetro Descripción
tableRef La ubicación de la tabla de entrada de BigQuery. Por ejemplo, <my-project>:<my-dataset>.<my-table>.
bucket La carpeta de Cloud Storage en la que se escriben los archivos de Parquet. Por ejemplo, gs://mybucket/exports.
numShards La cantidad de fragmentos de archivos de salida (opcional). El valor predeterminado es 1.
fields Una lista de campos separados por comas para seleccionar de la tabla de BigQuery de entrada (opcional).

Ejecuta la plantilla de BigQuery a Parquet de Cloud Storage

Consola

  1. Ve a la página Crear un trabajo a partir de una plantilla de Dataflow.
  2. Ir a Crear un trabajo a partir de una plantilla
  3. En el campo Nombre del trabajo, ingresa un nombre de trabajo único.
  4. Opcional: Para Extremo regional, selecciona un valor del menú desplegable. El extremo regional predeterminado es us-central1.

    Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.

  5. En el menú desplegable Plantilla de Dataflow, selecciona the BigQuery export to Parquet (via Storage API) template.
  6. En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
  7. Haga clic en Ejecutar trabajo.

gcloud

En tu shell o terminal, ejecuta la plantilla:

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

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • REGION_NAME: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • BIGQUERY_TABLE: Es el nombre de la tabla de BigQuery.
  • OUTPUT_DIRECTORY: Es tu carpeta de Cloud Storage para archivos de salida
  • NUM_SHARDS: Es la cantidad deseada de fragmentos de archivo de salida
  • FIELDS: Es la lista de campos separados por comas para seleccionar de la tabla de entrada de BigQuery

API

Para ejecutar la plantilla con la API de REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus permisos de autorización, 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",
   }
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • LOCATION: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • BIGQUERY_TABLE: Es el nombre de la tabla de BigQuery.
  • OUTPUT_DIRECTORY: Es tu carpeta de Cloud Storage para archivos de salida
  • NUM_SHARDS: Es la cantidad deseada de fragmentos de archivo de salida
  • FIELDS: Es la lista de campos separados por comas para seleccionar de la tabla de entrada de BigQuery

BigQuery a Elasticsearch

La plantilla de BigQuery a Elasticsearch es una canalización por lotes que transfiere datos de una tabla de BigQuery a Elasticsearch como documentos. La plantilla puede leer toda la tabla o registros específicos mediante una consulta proporcionada.

Requisitos para esta canalización

  • La tabla de origen de BigQuery debe existir.
  • Se debe poder acceder a un host de Elasticsearch en una instancia de Google Cloud o Elastic Cloud con la versión 7.0 de Elasticsearch o una superior desde las máquinas de trabajador de Dataflow.

Parámetros de la plantilla

Parámetro Descripción
connectionUrl URL de Elasticsearch en el formato https://hostname:[port] o especificar el CloudID si usas Elastic Cloud.
apiKey Clave de API codificada en Base64 que se usa para la autenticación.
index El índice de Elasticsearch en el que se emitirá la solicitud, por ejemplo, my-index.
inputTableSpec Tabla de BigQuery desde la que se puede leer para insertar en Elasticsearch (opcional). Se debe proporcionar la tabla o la consulta. Por ejemplo, projectId:datasetId.tablename.
query Consulta de SQL para extraer datos de BigQuery (opcional). Se debe proporcionar la tabla o la consulta.
useLegacySql Configurado como verdadero para usar SQL heredado (solo se aplica si se proporciona una consulta) (opcional). Valor predeterminado: false.
batchSize El tamaño del lote en cantidad de documentos (opcional). Valor predeterminado: 1000.
batchSizeBytes El tamaño del lote en cantidad de bytes (opcional). Valor predeterminado: 5242880 (5 MB).
maxRetryAttempts La cantidad máxima de reintentos debe ser mayor que 0 (opcional). Valor predeterminado: no retries.
maxRetryDuration La duración máxima del reintento en milisegundos debe ser superior a 0 (opcional). Valor predeterminado: no retries.
propertyAsIndex Opcional: Una propiedad en el documento que se indexa, cuyo valor especificará los metadatos _index para incluir con el documento en la solicitud masiva (tiene prioridad sobre una UDF _index). Valor predeterminado: none.
propertyAsId Opcional: Una propiedad en el documento que se indexa, cuyo valor especificará los metadatos _id para incluir con el documento en la solicitud masiva (tiene prioridad sobre una UDF _id). Valor predeterminado: none.
javaScriptIndexFnGcsPath La ruta de Cloud Storage a la fuente de UDF de JavaScript para una función que especificará los metadatos _index a fin de incluir el documento en la solicitud masiva (opcional). Valor predeterminado: none.
javaScriptIndexFnName Opcional: El nombre de función de JavaScript de la UDF para la función que especificará los metadatos _index que se incluirán en el documento en la solicitud masiva. Valor predeterminado: none.
javaScriptIdFnGcsPath La ruta de Cloud Storage a la fuente de UDF de JavaScript para una función que especificará los metadatos _id a fin de incluir el documento en la solicitud masiva (opcional). Valor predeterminado: none.
javaScriptIdFnName Opcional: El nombre de función de JavaScript de la UDF para la función que especificará los metadatos _id que se incluirán en el documento en la solicitud masiva. Valor predeterminado: none.
javaScriptTypeFnGcsPath La ruta de Cloud Storage a la fuente de UDF de JavaScript para una función que especificará los metadatos _type a fin de incluir el documento en la solicitud masiva (opcional). Valor predeterminado: none.
javaScriptTypeFnName Opcional: El nombre de función de JavaScript de la UDF para la función que especificará los metadatos _type que se incluirán en el documento en la solicitud masiva. Valor predeterminado: none.
javaScriptIsDeleteFnGcsPath La ruta de acceso de Cloud Storage a la fuente de UDF de JavaScript para la función que determinará si el documento se debe borrar en lugar de insertar o actualizar (opcional). La función debe mostrar el valor de string "true" o "false". Valor predeterminado: none.
javaScriptIsDeleteFnName Opcional: El nombre de función de JavaScript de la UDF para la función que determinará si el documento se debe borrar en lugar de insertarse o actualizarse. La función debe mostrar el valor de string "true" o "false". Valor predeterminado: none.
usePartialUpdate Opcional: Indica si se deben usar actualizaciones parciales (actualizar en lugar de crear o indexar), que permite documentos parciales con solicitudes de Elasticsearch. Valor predeterminado: false.
bulkInsertMethod Opcional: Si se debe usar INDEX (índice, permite inserción) o CREATE (creación, errores en _id duplicado) con solicitudes masivas de Elasticsearch. Valor predeterminado: CREATE.

Ejecuta la plantilla de BigQuery a Elasticsearch

Consola

  1. Ve a la página Crear un trabajo a partir de una plantilla de Dataflow.
  2. Ir a Crear un trabajo a partir de una plantilla
  3. En el campo Nombre del trabajo, ingresa un nombre de trabajo único.
  4. Opcional: Para Extremo regional, selecciona un valor del menú desplegable. El extremo regional predeterminado es us-central1.

    Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.

  5. En el menú desplegable Plantilla de Dataflow, selecciona the BigQuery to Elasticsearch template.
  6. En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
  7. Haga clic en Ejecutar trabajo.

gcloud

En tu shell o terminal, ejecuta la plantilla:

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

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • REGION_NAME: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • INPUT_TABLE_SPEC: Es el nombre de la tabla de BigQuery.
  • CONNECTION_URL: Es tu URL de Elasticsearch
  • APIKEY: Es tu clave de API codificada en Base64 para la autenticación
  • INDEX: Es el índice de Elasticsearch.

API

Para ejecutar la plantilla con la API de REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus permisos de autorización, 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",
   }
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • LOCATION: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • INPUT_TABLE_SPEC: Es el nombre de la tabla de BigQuery.
  • CONNECTION_URL: Es tu URL de Elasticsearch
  • APIKEY: Es tu clave de API codificada en Base64 para la autenticación
  • INDEX: Es el índice de Elasticsearch.

BigQuery a MongoDB

La plantilla de BigQuery a MongoDB es una canalización por lotes que lee filas de BigQuery y las escribe en MongoDB como documentos. Actualmente, cada fila se almacena como un documento.

Requisitos para esta canalización

  • La tabla de origen de BigQuery debe existir.
  • La instancia de destino de MongoDB debería ser accesible desde las máquinas de trabajador de Dataflow.

Parámetros de la plantilla

Parámetro Descripción
mongoDbUri Es el URI de conexión de MongoDB con el formato mongodb+srv://:@.
database La base de datos en MongoDB en la que se debe almacenar la colección. Por ejemplo: my-db.
collection Nombre de la colección en la base de datos de MongoDB. Por ejemplo: my-collection.
inputTableSpec Tabla de BigQuery para leer. Por ejemplo, bigquery-project:dataset.input_table.

Ejecuta la plantilla de BigQuery a MongoDB

Consola

  1. Ve a la página Crear un trabajo a partir de una plantilla de Dataflow.
  2. Ir a Crear un trabajo a partir de una plantilla
  3. En el campo Nombre del trabajo, ingresa un nombre de trabajo único.
  4. Opcional: Para Extremo regional, selecciona un valor del menú desplegable. El extremo regional predeterminado es us-central1.

    Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.

  5. En el menú desplegable Plantilla de Dataflow, selecciona the BigQuery to MongoDB template.
  6. En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
  7. Haga clic en Ejecutar trabajo.

gcloud

En tu shell o terminal, ejecuta la plantilla:

  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_MongoDB \
      --parameters \
  inputTableSpec=INPUT_TABLE_SPEC,\
  mongoDbUri=MONGO_DB_URI,\
  database=DATABASE,\
  collection=COLLECTION
  

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • REGION_NAME: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • INPUT_TABLE_SPEC: Es el nombre de la tabla de origen de BigQuery.
  • MONGO_DB_URI: Es el URI de MongoDB.
  • DATABASE: Es tu base de datos de MongoDB.
  • COLLECTION: Es tu colección de MongoDB.

API

Para ejecutar la plantilla con la API de REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus permisos de autorización, 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",
            "mongoDbUri": "MONGO_DB_URI",
            "database": "DATABASE",
            "collection": "COLLECTION"
        },
        "containerSpecGcsPath": "gs://dataflow-templates/VERSION/flex/BigQuery_to_MongoDB",
     }
  }

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • LOCATION: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • INPUT_TABLE_SPEC: Es el nombre de la tabla de origen de BigQuery.
  • MONGO_DB_URI: Es el URI de MongoDB.
  • DATABASE: Es tu base de datos de MongoDB.
  • COLLECTION: Es tu colección de MongoDB.

Bigtable a Avro en Cloud Storage

La plantilla de Bigtable a Cloud Storage en Avro es una canalización que lee datos de una tabla de Bigtable y la escribe en un bucket de Cloud Storage en formato Avro. Puedes usar la plantilla para transferir datos de Bigtable a Cloud Storage.

Requisitos para esta canalización:

  • La tabla de Bigtable debe existir.
  • El bucket de Cloud Storage de salida debe existir antes de ejecutar la canalización.

Parámetros de la plantilla

Parámetro Descripción
bigtableProjectId El ID del proyecto de Google Cloud de la instancia de Bigtable del que deseas leer los datos.
bigtableInstanceId El ID de la instancia de Bigtable que contiene la tabla.
bigtableTableId El ID de la tabla de Bigtable que se exportará.
outputDirectory La ruta de Cloud Storage en la que se escriben los datos. Por ejemplo, gs://mybucket/somefolder
filenamePrefix El prefijo del nombre del archivo Avro. Por ejemplo, output-

Ejecuta la plantilla de Bigtable a Cloud Storage en archivos Avro

Consola

  1. Ve a la página Crear un trabajo a partir de una plantilla de Dataflow.
  2. Ir a Crear un trabajo a partir de una plantilla
  3. En el campo Nombre del trabajo, ingresa un nombre de trabajo único.
  4. Opcional: Para Extremo regional, selecciona un valor del menú desplegable. El extremo regional predeterminado es us-central1.

    Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.

  5. En el menú desplegable Plantilla de Dataflow, selecciona the Cloud Bigtable to Avro Files on Cloud Storage template .
  6. En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
  7. Haga clic en Ejecutar trabajo.

gcloud

En tu shell o terminal, ejecuta la plantilla:

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

Reemplaza lo siguiente:

  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • REGION_NAME: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • BIGTABLE_PROJECT_ID: Es el ID del proyecto de Google Cloud de la instancia de Bigtable del que deseas leer los datos.
  • INSTANCE_ID: Es el ID de la instancia de Bigtable que contiene la tabla.
  • TABLE_ID: Es el ID de la tabla de Bigtable que se exportará.
  • OUTPUT_DIRECTORY: La ruta de Cloud Storage en la que se escriben los datos, por ejemplo, gs://mybucket/somefolder
  • FILENAME_PREFIX: Es el prefijo del nombre del archivo Avro, por ejemplo, output-

API

Para ejecutar la plantilla con la API de REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus permisos de autorización, 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" }
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • LOCATION: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • BIGTABLE_PROJECT_ID: Es el ID del proyecto de Google Cloud de la instancia de Bigtable del que deseas leer los datos.
  • INSTANCE_ID: Es el ID de la instancia de Bigtable que contiene la tabla.
  • TABLE_ID: Es el ID de la tabla de Bigtable que se exportará.
  • OUTPUT_DIRECTORY: La ruta de Cloud Storage en la que se escriben los datos, por ejemplo, gs://mybucket/somefolder
  • FILENAME_PREFIX: Es el prefijo del nombre del archivo Avro, por ejemplo, output-

Bigtable a Parquet en Cloud Storage

La plantilla de Bigtable a Cloud Storage en Parquet es una canalización que lee datos de una tabla de Bigtable y los escribe en un bucket de Cloud Storage en formato Parquet. Puedes usar la plantilla para transferir datos de Bigtable a Cloud Storage.

Requisitos para esta canalización:

  • La tabla de Bigtable debe existir.
  • El bucket de Cloud Storage de salida debe existir antes de ejecutar la canalización.

Parámetros de la plantilla

Parámetro Descripción
bigtableProjectId El ID del proyecto de Google Cloud de la instancia de Bigtable del que deseas leer los datos.
bigtableInstanceId El ID de la instancia de Bigtable que contiene la tabla.
bigtableTableId El ID de la tabla de Bigtable que se exportará.
outputDirectory La ruta de Cloud Storage en la que se escriben los datos. Por ejemplo, gs://mybucket/somefolder
filenamePrefix El prefijo del nombre del archivo Parquet. Por ejemplo, output-
numShards La cantidad de fragmentos del archivo de salida. Por ejemplo: 2.

Ejecuta la plantilla de Bigtable a Cloud Storage en archivos Parquet

Consola

  1. Ve a la página Crear un trabajo a partir de una plantilla de Dataflow.
  2. Ir a Crear un trabajo a partir de una plantilla
  3. En el campo Nombre del trabajo, ingresa un nombre de trabajo único.
  4. Opcional: Para Extremo regional, selecciona un valor del menú desplegable. El extremo regional predeterminado es us-central1.

    Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.

  5. En el menú desplegable Plantilla de Dataflow, selecciona the Cloud Bigtable to Parquet Files on Cloud Storage template.
  6. En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
  7. Haga clic en Ejecutar trabajo.

gcloud

En tu shell o terminal, ejecuta la plantilla:

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

Reemplaza lo siguiente:

  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • REGION_NAME: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • BIGTABLE_PROJECT_ID: Es el ID del proyecto de Google Cloud de la instancia de Bigtable del que deseas leer los datos.
  • INSTANCE_ID: Es el ID de la instancia de Bigtable que contiene la tabla.
  • TABLE_ID: Es el ID de la tabla de Bigtable que se exportará.
  • OUTPUT_DIRECTORY: La ruta de Cloud Storage en la que se escriben los datos, por ejemplo, gs://mybucket/somefolder
  • FILENAME_PREFIX: Es el prefijo del nombre del archivo Parquet, por ejemplo, output-
  • NUM_SHARDS: Es la cantidad de archivos de Parquet que se mostrarán, por ejemplo, 1

API

Para ejecutar la plantilla con la API de REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus permisos de autorización, 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" }
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • LOCATION: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • BIGTABLE_PROJECT_ID: Es el ID del proyecto de Google Cloud de la instancia de Bigtable del que deseas leer los datos.
  • INSTANCE_ID: Es el ID de la instancia de Bigtable que contiene la tabla.
  • TABLE_ID: Es el ID de la tabla de Bigtable que se exportará.
  • OUTPUT_DIRECTORY: La ruta de Cloud Storage en la que se escriben los datos, por ejemplo, gs://mybucket/somefolder
  • FILENAME_PREFIX: Es el prefijo del nombre del archivo Parquet, por ejemplo, output-
  • NUM_SHARDS: Es la cantidad de archivos de Parquet que se mostrarán, por ejemplo, 1

Bigtable a SequenceFile en Cloud Storage

La plantilla de Bigtable a Cloud Storage en SequenceFile es una canalización que lee datos de una tabla de Bigtable y escribe los datos en un bucket de Cloud Storage en formato SequenceFile. Puedes usar la plantilla para copiar datos de Bigtable a Cloud Storage.

Requisitos para esta canalización:

  • La tabla de Bigtable debe existir.
  • El bucket de Cloud Storage de salida debe existir antes de ejecutar la canalización.

Parámetros de la plantilla

Parámetro Descripción
bigtableProject El ID del proyecto de Google Cloud de la instancia de Bigtable del que deseas leer los datos.
bigtableInstanceId El ID de la instancia de Bigtable que contiene la tabla.
bigtableTableId El ID de la tabla de Bigtable que se exportará.
bigtableAppProfileId El ID del perfil de la aplicación de Bigtable que se usará para la exportación. Si no especificas un perfil de aplicación, Bigtable usa el perfil predeterminado de aplicación de la instancia.
destinationPath La ruta de Cloud Storage en la que se escriben los datos. Por ejemplo, gs://mybucket/somefolder
filenamePrefix El prefijo del nombre del archivo SequenceFile. Por ejemplo, output-

Ejecuta la plantilla de Bigtable a Cloud Storage en SequenceFile

Consola

  1. Ve a la página Crear un trabajo a partir de una plantilla de Dataflow.
  2. Ir a Crear un trabajo a partir de una plantilla
  3. En el campo Nombre del trabajo, ingresa un nombre de trabajo único.
  4. Opcional: Para Extremo regional, selecciona un valor del menú desplegable. El extremo regional predeterminado es us-central1.

    Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.

  5. En el menú desplegable Plantilla de Dataflow, selecciona the Cloud Bigtable to SequenceFile Files on Cloud Storage template .
  6. En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
  7. Haga clic en Ejecutar trabajo.

gcloud

En tu shell o terminal, ejecuta la plantilla:

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

Reemplaza lo siguiente:

  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • REGION_NAME: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • BIGTABLE_PROJECT_ID: Es el ID del proyecto de Google Cloud de la instancia de Bigtable del que deseas leer los datos.
  • INSTANCE_ID: Es el ID de la instancia de Bigtable que contiene la tabla.
  • TABLE_ID: Es el ID de la tabla de Bigtable que se exportará.
  • APPLICATION_PROFILE_ID: Es el ID del perfil de la aplicación de Bigtable que se usará para la exportación.
  • DESTINATION_PATH: La ruta de Cloud Storage en la que se escriben los datos, por ejemplo, gs://mybucket/somefolder
  • FILENAME_PREFIX: Es el prefijo del nombre del archivo SequenceFile, por ejemplo, output-

API

Para ejecutar la plantilla con la API de REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus permisos de autorización, 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" }
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • LOCATION: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • BIGTABLE_PROJECT_ID: Es el ID del proyecto de Google Cloud de la instancia de Bigtable del que deseas leer los datos.
  • INSTANCE_ID: Es el ID de la instancia de Bigtable que contiene la tabla.
  • TABLE_ID: Es el ID de la tabla de Bigtable que se exportará.
  • APPLICATION_PROFILE_ID: Es el ID del perfil de la aplicación de Bigtable que se usará para la exportación.
  • DESTINATION_PATH: La ruta de Cloud Storage en la que se escriben los datos, por ejemplo, gs://mybucket/somefolder
  • FILENAME_PREFIX: Es el prefijo del nombre del archivo SequenceFile, por ejemplo, output-

Datastore a Cloud Storage en archivos de texto [obsoleta]

Esta plantilla está obsoleta y se quitará en el primer trimestre de 2022. Migra a la plantilla de Firestore a Cloud Storage en archivos de texto.

La plantilla de Datastore a Cloud Storage en archivos de texto es una canalización por lotes que lee entidades de Datastore y las escribe en Cloud Storage como archivos de texto. Puedes proporcionar una función para procesar cada entidad como una string JSON. Si no proporcionas esa función, cada línea en el archivo de salida será una entidad serializada JSON.

Requisitos para esta canalización:

Datastore se debe configurar en el proyecto antes de ejecutar la canalización.

Parámetros de la plantilla

Parámetro Descripción
datastoreReadGqlQuery Consulta de GQL que especifica qué entidades tomar. Por ejemplo, SELECT * FROM MyKind
datastoreReadProjectId El ID del proyecto de Google Cloud de la instancia de Datastore del que deseas leer los datos.
datastoreReadNamespace El espacio de nombres de las entidades solicitadas. Para usar el espacio de nombres predeterminado, deja este parámetro en blanco.
javascriptTextTransformGcsPath El URI de Cloud Storage del archivo .js que define la función definida por el usuario (UDF) de JavaScript que deseas usar (opcional). Por ejemplo, gs://my-bucket/my-udfs/my_file.js.
javascriptTextTransformFunctionName El nombre de la función definida por el usuario (UDF) de JavaScript que deseas usar (opcional). Por ejemplo, si el código de tu función de JavaScript es myTransform(inJson) { /*...do stuff...*/ }, el nombre de la función es myTransform. Para ver ejemplos de UDF de JavaScript, consulta Ejemplos de UDF.
textWritePrefix Prefijo de la ruta de acceso de Cloud Storage donde se especifican los datos que se escribieron. Por ejemplo, gs://mybucket/somefolder/.

Ejecuta la plantilla de texto de Datastore en Cloud Storage

Consola

  1. Ve a la página Crear un trabajo a partir de una plantilla de Dataflow.
  2. Ir a Crear un trabajo a partir de una plantilla
  3. En el campo Nombre del trabajo, ingresa un nombre de trabajo único.
  4. Opcional: Para Extremo regional, selecciona un valor del menú desplegable. El extremo regional predeterminado es us-central1.

    Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.

  5. En el menú desplegable Plantilla de Dataflow, selecciona the Datastore to Text Files on Cloud Storage template.
  6. En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
  7. Haga clic en Ejecutar trabajo.

gcloud

En tu shell o terminal, ejecuta la plantilla:

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/

Reemplaza lo siguiente:

  • JOB_NAME: Es el nombre del trabajo que elijas
  • REGION_NAME: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • BUCKET_NAME: Es el nombre de tu bucket de Cloud Storage.
  • DATASTORE_PROJECT_ID: Es el ID del proyecto de Cloud en el que existe la instancia de Datastore.
  • DATASTORE_KIND: Es el tipo de entidades de Datastore
  • DATASTORE_NAMESPACE: Es el espacio de nombres de tus entidades de Datastore
  • JAVASCRIPT_FUNCTION es el nombre de la función definida por el usuario (UDF) de JavaScript que deseas usar.

    Por ejemplo, si el código de tu función de JavaScript es myTransform(inJson) { /*...do stuff...*/ }, el nombre de la función es myTransform. Para ver ejemplos de UDF de JavaScript, consulta Ejemplos de UDF.

  • PATH_TO_JAVASCRIPT_UDF_FILE: El URI de Cloud Storage de .js archivo que define la función definida por el usuario (UDF) de JavaScript que deseas usar, por ejemplo:gs://my-bucket/my-udfs/my_file.js

API

Para ejecutar la plantilla con la API de REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus permisos de autorización, 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" }
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • LOCATION: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • BUCKET_NAME: Es el nombre de tu bucket de Cloud Storage.
  • DATASTORE_PROJECT_ID: Es el ID del proyecto de Cloud en el que existe la instancia de Datastore.
  • DATASTORE_KIND: Es el tipo de entidades de Datastore
  • DATASTORE_NAMESPACE: Es el espacio de nombres de tus entidades de Datastore
  • JAVASCRIPT_FUNCTION es el nombre de la función definida por el usuario (UDF) de JavaScript que deseas usar.

    Por ejemplo, si el código de tu función de JavaScript es myTransform(inJson) { /*...do stuff...*/ }, el nombre de la función es myTransform. Para ver ejemplos de UDF de JavaScript, consulta Ejemplos de UDF.

  • PATH_TO_JAVASCRIPT_UDF_FILE: El URI de Cloud Storage de .js archivo que define la función definida por el usuario (UDF) de JavaScript que deseas usar, por ejemplo:gs://my-bucket/my-udfs/my_file.js

Firestore a Cloud Storage en archivos de texto

La plantilla de Firestore a Cloud Storage en archivos de texto es una canalización por lotes que lee entidades de Firestore y las escribe en Cloud Storage como archivos de texto. Puedes proporcionar una función para procesar cada entidad como una string JSON. Si no proporcionas esa función, cada línea en el archivo de salida será una entidad serializada JSON.

Requisitos para esta canalización:

Firestore se debe configurar en el proyecto antes de ejecutar la canalización.

Parámetros de la plantilla

Parámetro Descripción
firestoreReadGqlQuery Consulta de GQL que especifica qué entidades tomar. Por ejemplo, SELECT * FROM MyKind
firestoreReadProjectId El ID del proyecto de Google Cloud de la instancia de Firestore del que deseas leer los datos.
firestoreReadNamespace Espacio de nombres de las entidades solicitadas. Para usar el espacio de nombres predeterminado, deja este parámetro en blanco.
javascriptTextTransformGcsPath El URI de Cloud Storage del archivo .js que define la función definida por el usuario (UDF) de JavaScript que deseas usar (opcional). Por ejemplo, gs://my-bucket/my-udfs/my_file.js.
javascriptTextTransformFunctionName El nombre de la función definida por el usuario (UDF) de JavaScript que deseas usar (opcional). Por ejemplo, si el código de tu función de JavaScript es myTransform(inJson) { /*...do stuff...*/ }, el nombre de la función es myTransform. Para ver ejemplos de UDF de JavaScript, consulta Ejemplos de UDF.
textWritePrefix Prefijo de la ruta de acceso de Cloud Storage donde se especifican los datos que se escribieron. Por ejemplo, gs://mybucket/somefolder/.

Ejecuta la plantilla de Firestore a Cloud Storage en archivos de texto

Consola

  1. Ve a la página Crear un trabajo a partir de una plantilla de Dataflow.
  2. Ir a Crear un trabajo a partir de una plantilla
  3. En el campo Nombre del trabajo, ingresa un nombre de trabajo único.
  4. Opcional: Para Extremo regional, selecciona un valor del menú desplegable. El extremo regional predeterminado es us-central1.

    Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.

  5. En el menú desplegable Plantilla de Dataflow, selecciona the Firestore to Text Files on Cloud Storage template.
  6. En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
  7. Haga clic en Ejecutar trabajo.

gcloud

En tu shell o terminal, ejecuta la plantilla:

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/

Reemplaza lo siguiente:

  • JOB_NAME: Es el nombre del trabajo que elijas
  • REGION_NAME: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • BUCKET_NAME: Es el nombre de tu bucket de Cloud Storage.
  • FIRESTORE_PROJECT_ID: Es el ID del proyecto de Cloud en el que existe la instancia de Firestore.
  • FIRESTORE_KIND: Es el tipo de tus entidades de Firestore.
  • FIRESTORE_NAMESPACE: Es el espacio de nombres de las entidades de Firestore.
  • JAVASCRIPT_FUNCTION es el nombre de la función definida por el usuario (UDF) de JavaScript que deseas usar.

    Por ejemplo, si el código de tu función de JavaScript es myTransform(inJson) { /*...do stuff...*/ }, el nombre de la función es myTransform. Para ver ejemplos de UDF de JavaScript, consulta Ejemplos de UDF.

  • PATH_TO_JAVASCRIPT_UDF_FILE: El URI de Cloud Storage de .js archivo que define la función definida por el usuario (UDF) de JavaScript que deseas usar, por ejemplo:gs://my-bucket/my-udfs/my_file.js

API

Para ejecutar la plantilla con la API de REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus permisos de autorización, 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" }
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • LOCATION: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • BUCKET_NAME: Es el nombre de tu bucket de Cloud Storage.
  • FIRESTORE_PROJECT_ID: Es el ID del proyecto de Cloud en el que existe la instancia de Firestore.
  • FIRESTORE_KIND: Es el tipo de tus entidades de Firestore.
  • FIRESTORE_NAMESPACE: Es el espacio de nombres de las entidades de Firestore.
  • JAVASCRIPT_FUNCTION es el nombre de la función definida por el usuario (UDF) de JavaScript que deseas usar.

    Por ejemplo, si el código de tu función de JavaScript es myTransform(inJson) { /*...do stuff...*/ }, el nombre de la función es myTransform. Para ver ejemplos de UDF de JavaScript, consulta Ejemplos de UDF.

  • PATH_TO_JAVASCRIPT_UDF_FILE: El URI de Cloud Storage de .js archivo que define la función definida por el usuario (UDF) de JavaScript que deseas usar, por ejemplo:gs://my-bucket/my-udfs/my_file.js

Cloud Spanner a Cloud Storage Avro

La plantilla de Cloud Spanner a archivos Avro en Cloud Storage es una canalización por lotes que exporta una base de datos completa de Cloud Spanner a Cloud Storage en formato Avro. Exportar una base de datos de Cloud Spanner crea una carpeta en el bucket que selecciones. La carpeta contiene estos archivos:

  • Un archivo spanner-export.json
  • Un archivo TableName-manifest.json para cada tabla de la base de datos que exportaste.
  • Uno o más archivos TableName.avro-#####-of-#####

Por ejemplo, cuando se exporta una base de datos con dos tablas, Singers y Albums, se crea el siguiente conjunto de archivos:

  • 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

Requisitos para esta canalización:

  • La base de datos de Cloud Spanner debe existir.
  • El bucket de salida de Cloud Storage debe existir.
  • Además de las funciones de IAM necesarias en la ejecución de trabajos de Dataflow, también debes tener las funciones de IAM adecuadas para leer los datos de Cloud Spanner y escribir en el bucket de Cloud Storage.

Parámetros de la plantilla

Parámetro Descripción
instanceId ID de instancia de la base de datos de Cloud Spanner que quieres exportar.
databaseId ID de la base de datos de la base de datos de Cloud Spanner que quieres exportar.
outputDir Ruta de acceso de Cloud Storage desde la que quieres exportar los archivos Avro. El trabajo de exportación crea un directorio nuevo en esta ruta de acceso que contiene los archivos exportados.
snapshotTime La marca de tiempo que corresponde a la versión de la base de datos de Cloud Spanner que deseas leer (opcional). La marca de tiempo se debe especificar según el formato RFC 3339 UTC “Zulu”. Por ejemplo, 1990-12-31T23:59:60Z La marca de tiempo debe ser del pasado y se aplica la Máxima marca de tiempo de inactividad.
tableNames Una lista separada por comas de tablas que especifican el subconjunto de la base de datos de Cloud Spanner que se exportará (opcional). La lista debe incluir todas las tablas relacionadas (tablas superiores, tablas a las que se hace referencia en la clave externa). Si no se enumeran de forma explícita, la marca “mustExportBasedTables” debe configurarse para una exportación correcta.
shouldExportRelatedTables (Opcional) La marca que se usa junto con el parámetro “tableNames” para incluir todas las tablas relacionadas que se exportarán.
spannerProjectId El ID del proyecto de Google Cloud de la base de datos de Cloud Spanner desde el que quieres leer datos (opcional).

Ejecuta la plantilla de Cloud Spanner a archivos Avro en Cloud Storage

Consola

  1. Ve a la página Crear un trabajo a partir de una plantilla de Dataflow.
  2. Ir a Crear un trabajo a partir de una plantilla
  3. En el campo Nombre del trabajo, ingresa un nombre de trabajo único.

    Para que el trabajo aparezca en la página Instancias de Spanner de la consola de Google Cloud, el nombre del trabajo debe coincidir con el siguiente formato:

    cloud-spanner-export-SPANNER_INSTANCE_ID-SPANNER_DATABASE_NAME

    Reemplaza lo siguiente:

    • SPANNER_INSTANCE_ID: El ID de tu instancia de Spanner
    • SPANNER_DATABASE_NAME: El nombre de tu base de datos de Spanner
  4. Opcional: Para Extremo regional, selecciona un valor del menú desplegable. El extremo regional predeterminado es us-central1.

    Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.

  5. En el menú desplegable Plantilla de Dataflow, selecciona the Cloud Spanner to Avro Files on Cloud Storage template.
  6. En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
  7. Haga clic en Ejecutar trabajo.

gcloud

En tu shell o terminal, ejecuta la plantilla:

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

Reemplaza lo siguiente:

  • JOB_NAME: Es el nombre del trabajo que elijas

    Para que el trabajo se muestre en la parte de Cloud Spanner de la consola de Google Cloud, el nombre del trabajo debe coincidir con el formato cloud-spanner-export-INSTANCE_ID-DATABASE_ID.

  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • REGION_NAME: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • GCS_STAGING_LOCATION: Es la ruta en la que se deben escribir archivos temporales, por ejemplo, gs://mybucket/temp.
  • INSTANCE_ID: Es el ID de instancia de Cloud Spanner
  • DATABASE_ID: Es el ID de la base de datos de Cloud Spanner.
  • GCS_DIRECTORY: Es la ruta de Cloud Storage que los archivos Avro se exportan a .

API

Para ejecutar la plantilla con la API de REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus permisos de autorización, 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"
   }
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas

    Para que el trabajo se muestre en la parte de Cloud Spanner de la consola de Google Cloud, el nombre del trabajo debe coincidir con el formato cloud-spanner-export-INSTANCE_ID-DATABASE_ID.

  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • LOCATION: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • GCS_STAGING_LOCATION: Es la ruta en la que se deben escribir archivos temporales, por ejemplo, gs://mybucket/temp.
  • INSTANCE_ID: Es el ID de instancia de Cloud Spanner
  • DATABASE_ID: Es el ID de la base de datos de Cloud Spanner.
  • GCS_DIRECTORY: Es la ruta de Cloud Storage que los archivos Avro se exportan a .

Cloud Spanner a Cloud Storage Text

La plantilla de Cloud Spanner a Cloud Storage Text es una canalización por lotes que lee datos desde una tabla de Cloud Spanner y los escribe en Cloud Storage como archivos de texto CSV.

Requisitos para esta canalización:

  • La tabla de entrada de Spanner debe existir antes de ejecutar la canalización.

Parámetros de la plantilla

Parámetro Descripción
spannerProjectId El ID del proyecto de Google Cloud de la base de datos de Cloud Spanner desde el que quieres leer datos.
spannerDatabaseId El ID de la base de datos de la tabla solicitada.
spannerInstanceId El ID de la instancia solicitada.
spannerTable La tabla de la que se leerán los datos.
textWritePrefix El directorio donde se escriben los archivos de texto de salida. Agrega una / al final. Por ejemplo, gs://mybucket/somefolder/.
spannerSnapshotTime La marca de tiempo que corresponde a la versión de la base de datos de Cloud Spanner que deseas leer (opcional). La marca de tiempo se debe especificar según el formato RFC 3339 UTC “Zulu”. Por ejemplo, 1990-12-31T23:59:60Z La marca de tiempo debe ser del pasado y se aplica la Máxima marca de tiempo de inactividad.

Ejecuta la plantilla de Cloud Spanner a Cloud Storage Text

Consola

  1. Ve a la página Crear un trabajo a partir de una plantilla de Dataflow.
  2. Ir a Crear un trabajo a partir de una plantilla
  3. En el campo Nombre del trabajo, ingresa un nombre de trabajo único.
  4. Opcional: Para Extremo regional, selecciona un valor del menú desplegable. El extremo regional predeterminado es us-central1.

    Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.

  5. En el menú desplegable Plantilla de Dataflow, selecciona the Cloud Spanner to Text Files on Cloud Storage template.
  6. En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
  7. Haga clic en Ejecutar trabajo.

gcloud

En tu shell o terminal, ejecuta la plantilla:

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/

Reemplaza lo siguiente:

  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • REGION_NAME: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • SPANNER_PROJECT_ID: Es el ID del proyecto de Cloud de la base de datos de Spanner desde la que deseas leer los datos.
  • DATABASE_ID: Es el ID de la base de datos de Spanner.
  • BUCKET_NAME: Es el nombre del bucket de Cloud Storage.
  • INSTANCE_ID: Es el ID de la instancia de Spanner.
  • TABLE_ID: Es el ID de la tabla de Spanner.

API

Para ejecutar la plantilla con la API de REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus permisos de autorización, 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" }
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • LOCATION: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • SPANNER_PROJECT_ID: Es el ID del proyecto de Cloud de la base de datos de Spanner desde la que deseas leer los datos.
  • DATABASE_ID: Es el ID de la base de datos de Spanner.
  • BUCKET_NAME: Es el nombre del bucket de Cloud Storage.
  • INSTANCE_ID: Es el ID de la instancia de Spanner.
  • TABLE_ID: Es el ID de la tabla de Spanner.

Archivos Avro de Cloud Storage en Bigtable

La plantilla de Avro de Cloud Storage a Bigtable es una canalización que lee datos de archivos Avro en un bucket de Cloud Storage y escribe los datos en una tabla de Bigtable. Puedes usar la plantilla para copiar datos de Cloud Storage a Bigtable.

Requisitos para esta canalización:

  • La tabla de Bigtable debe existir y tener las mismas familias de columnas que se exportaron en los archivos Avro.
  • Los archivos Avro de entrada deben existir en un bucket de Cloud Storage antes de ejecutar la canalización.
  • Bigtable espera un esquema específico de los archivos Avro de entrada.

Parámetros de la plantilla

Parámetro Descripción
bigtableProjectId El ID del proyecto de Google Cloud de la instancia de Bigtable en la que deseas escribir datos.
bigtableInstanceId El ID de la instancia de Bigtable que contiene la tabla.
bigtableTableId El ID de la tabla de Bigtable que se importará.
inputFilePattern Patrón de la ruta de acceso de Cloud Storage en la que se encuentran los datos. Por ejemplo, gs://mybucket/somefolder/prefix*

Ejecuta la plantilla de Avro de Cloud Storage a Bigtable

Consola

  1. Ve a la página Crear un trabajo a partir de una plantilla de Dataflow.
  2. Ir a Crear un trabajo a partir de una plantilla
  3. En el campo Nombre del trabajo, ingresa un nombre de trabajo único.
  4. Opcional: Para Extremo regional, selecciona un valor del menú desplegable. El extremo regional predeterminado es us-central1.

    Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.

  5. En el menú desplegable Plantilla de Dataflow, selecciona the Avro Files on Cloud Storage to Cloud Bigtable template.
  6. En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
  7. Haga clic en Ejecutar trabajo.

gcloud

En tu shell o terminal, ejecuta la plantilla:

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

Reemplaza lo siguiente:

  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • REGION_NAME: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • BIGTABLE_PROJECT_ID: Es el ID del proyecto de Google Cloud de la instancia de Bigtable del que deseas leer los datos.
  • INSTANCE_ID: Es el ID de la instancia de Bigtable que contiene la tabla.
  • TABLE_ID: Es el ID de la tabla de Bigtable que se exportará.
  • INPUT_FILE_PATTERN: Es el patrón de ruta de acceso de Cloud Storage en la que se encuentran los datos, por ejemplo, gs://mybucket/somefolder/prefix*.

API

Para ejecutar la plantilla con la API de REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus permisos de autorización, 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" }
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • LOCATION: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • BIGTABLE_PROJECT_ID: Es el ID del proyecto de Google Cloud de la instancia de Bigtable del que deseas leer los datos.
  • INSTANCE_ID: Es el ID de la instancia de Bigtable que contiene la tabla.
  • TABLE_ID: Es el ID de la tabla de Bigtable que se exportará.
  • INPUT_FILE_PATTERN: Es el patrón de ruta de acceso de Cloud Storage en la que se encuentran los datos, por ejemplo, gs://mybucket/somefolder/prefix*.

Archivos Avro de Cloud Storage en Cloud Spanner

La plantilla de Cloud Storage Avro a Cloud Spanner es una canalización por lotes que lee archivos Avro exportados desde Cloud Spanner almacenados en Cloud Storage y los importa a una base de datos de Cloud Spanner.

Requisitos para esta canalización:

  • La base de datos de destino de Cloud Spanner debe existir y estar vacía.
  • Debes tener permisos de lectura para el bucket de Cloud Storage y permisos de escritura para la base de datos de destino de Cloud Spanner.
  • La ruta de entrada a Cloud Storage debe existir y debe incluir un archivo spanner-export.json que contenga una descripción JSON de los archivos que se importarán.

Parámetros de la plantilla

Parámetro Descripción
instanceId ID de la instancia de la base de datos de Cloud Spanner.
databaseId El ID de la base de datos de Cloud Spanner.
inputDir Ruta de acceso de Cloud Storage desde la que se importan los archivos Avro.

Ejecuta la plantilla de Cloud Storage Avro a Cloud Spanner

Consola

  1. Ve a la página Crear un trabajo a partir de una plantilla de Dataflow.
  2. Ir a Crear un trabajo a partir de una plantilla
  3. En el campo Nombre del trabajo, ingresa un nombre de trabajo único.

    Para que el trabajo aparezca en la página Instancias de Spanner de la consola de Google Cloud, el nombre del trabajo debe coincidir con el siguiente formato:

    cloud-spanner-import-SPANNER_INSTANCE_ID-SPANNER_DATABASE_NAME

    Reemplaza lo siguiente:

    • SPANNER_INSTANCE_ID: El ID de tu instancia de Spanner
    • SPANNER_DATABASE_NAME: El nombre de tu base de datos de Spanner
  4. Opcional: Para Extremo regional, selecciona un valor del menú desplegable. El extremo regional predeterminado es us-central1.

    Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.

  5. En el menú desplegable Plantilla de Dataflow, selecciona the Avro Files on Cloud Storage to Cloud Spanner template.
  6. En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
  7. Haga clic en Ejecutar trabajo.

gcloud

En tu shell o terminal, ejecuta la plantilla:

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

Reemplaza lo siguiente:

  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • REGION_NAME: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • INSTANCE_ID: Es el ID de la instancia de Spanner que contiene la base de datos.
  • DATABASE_ID: Es el ID de la base de datos de Spanner a la cual importar.
  • GCS_DIRECTORY: Es la ruta de Cloud Storage desde la que se importan los archivos Avro, por ejemplo, gs://mybucket/somefolder.

API

Para ejecutar la plantilla con la API de REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus permisos de autorización, 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"
   }
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • LOCATION: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • INSTANCE_ID: Es el ID de la instancia de Spanner que contiene la base de datos.
  • DATABASE_ID: Es el ID de la base de datos de Spanner a la cual importar.
  • GCS_DIRECTORY: Es la ruta de Cloud Storage desde la que se importan los archivos Avro, por ejemplo, gs://mybucket/somefolder.

Archivos Parquet de Cloud Storage en Bigtable

La plantilla de Parquet de Cloud Storage a Bigtable es una canalización que lee datos de archivos Parquet en un bucket de Cloud Storage y escribe los datos en una tabla de Bigtable. Puedes usar la plantilla para copiar datos de Cloud Storage a Bigtable.

Requisitos para esta canalización:

  • La tabla de Bigtable debe existir y tener las mismas familias de columnas que se exportaron en los archivos Parquet.
  • Los archivos de Parquet de entrada deben existir en un bucket de Cloud Storage antes de ejecutar la canalización.
  • Bigtable espera un esquema específico de los archivos Parquet de entrada.

Parámetros de la plantilla

Parámetro Descripción
bigtableProjectId El ID del proyecto de Google Cloud de la instancia de Bigtable en la que deseas escribir datos.
bigtableInstanceId El ID de la instancia de Bigtable que contiene la tabla.
bigtableTableId El ID de la tabla de Bigtable que se importará.
inputFilePattern Patrón de la ruta de acceso de Cloud Storage en la que se encuentran los datos. Por ejemplo, gs://mybucket/somefolder/prefix*

Ejecuta la plantilla de Parquet de Cloud Storage a Bigtable

Consola

  1. Ve a la página Crear un trabajo a partir de una plantilla de Dataflow.
  2. Ir a Crear un trabajo a partir de una plantilla
  3. En el campo Nombre del trabajo, ingresa un nombre de trabajo único.
  4. Opcional: Para Extremo regional, selecciona un valor del menú desplegable. El extremo regional predeterminado es us-central1.

    Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.

  5. En el menú desplegable Plantilla de Dataflow, selecciona the Parquet Files on Cloud Storage to Cloud Bigtable template.
  6. En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
  7. Haga clic en Ejecutar trabajo.

gcloud

En tu shell o terminal, ejecuta la plantilla:

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

Reemplaza lo siguiente:

  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • REGION_NAME: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • BIGTABLE_PROJECT_ID: Es el ID del proyecto de Google Cloud de la instancia de Bigtable del que deseas leer los datos.
  • INSTANCE_ID: Es el ID de la instancia de Bigtable que contiene la tabla.
  • TABLE_ID: Es el ID de la tabla de Bigtable que se exportará.
  • INPUT_FILE_PATTERN: Es el patrón de ruta de acceso de Cloud Storage en la que se encuentran los datos, por ejemplo, gs://mybucket/somefolder/prefix*.

API

Para ejecutar la plantilla con la API de REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus permisos de autorización, 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" }
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • LOCATION: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • BIGTABLE_PROJECT_ID: Es el ID del proyecto de Google Cloud de la instancia de Bigtable del que deseas leer los datos.
  • INSTANCE_ID: Es el ID de la instancia de Bigtable que contiene la tabla.
  • TABLE_ID: Es el ID de la tabla de Bigtable que se exportará.
  • INPUT_FILE_PATTERN: Es el patrón de ruta de acceso de Cloud Storage en la que se encuentran los datos, por ejemplo, gs://mybucket/somefolder/prefix*.

SequenceFile de Cloud Storage a Bigtable

La plantilla de SequenceFile de Cloud Storage a Bigtable es una canalización que lee datos de un archivo SequenceFile en un bucket de Cloud Storage y escribe los datos en una tabla de Bigtable. Puedes usar la plantilla para copiar datos de Cloud Storage a Bigtable.

Requisitos para esta canalización:

  • La tabla de Bigtable debe existir.
  • Los SequenceFiles de entrada deben existir en un bucket de Cloud Storage antes de ejecutar la canalización.
  • Los archivos SequenceFile de entrada deben haberse exportado desde Bigtable o HBase.

Parámetros de la plantilla

Parámetro Descripción
bigtableProject El ID del proyecto de Google Cloud de la instancia de Bigtable en la que deseas escribir datos.
bigtableInstanceId El ID de la instancia de Bigtable que contiene la tabla.
bigtableTableId El ID de la tabla de Bigtable que se importará.
bigtableAppProfileId El ID del perfil de aplicación de Bigtable que se usará para la importación. Si no especificas un perfil de aplicación, Bigtable usa el perfil predeterminado de aplicación de la instancia.
sourcePattern Patrón de la ruta de acceso de Cloud Storage en la que se encuentran los datos. Por ejemplo, gs://mybucket/somefolder/prefix*

Ejecuta la plantilla de Cloud Storage SequenceFile a Bigtable

Consola

  1. Ve a la página Crear un trabajo a partir de una plantilla de Dataflow.
  2. Ir a Crear un trabajo a partir de una plantilla
  3. En el campo Nombre del trabajo, ingresa un nombre de trabajo único.
  4. Opcional: Para Extremo regional, selecciona un valor del menú desplegable. El extremo regional predeterminado es us-central1.

    Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.

  5. En el menú desplegable Plantilla de Dataflow, selecciona the SequenceFile Files on Cloud Storage to Cloud Bigtable template.
  6. En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
  7. Haga clic en Ejecutar trabajo.

gcloud

En tu shell o terminal, ejecuta la plantilla:

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

Reemplaza lo siguiente:

  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • REGION_NAME: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • BIGTABLE_PROJECT_ID: Es el ID del proyecto de Google Cloud de la instancia de Bigtable del que deseas leer los datos.
  • INSTANCE_ID: Es el ID de la instancia de Bigtable que contiene la tabla.
  • TABLE_ID: Es el ID de la tabla de Bigtable que se exportará.
  • APPLICATION_PROFILE_ID: Es el ID del perfil de la aplicación de Bigtable que se usará para la exportación.
  • SOURCE_PATTERN: Es el patrón de ruta de acceso de Cloud Storage en la que se encuentran los datos, por ejemplo, gs://mybucket/somefolder/prefix*.

API

Para ejecutar la plantilla con la API de REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus permisos de autorización, 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" }
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • LOCATION: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • BIGTABLE_PROJECT_ID: Es el ID del proyecto de Google Cloud de la instancia de Bigtable del que deseas leer los datos.
  • INSTANCE_ID: Es el ID de la instancia de Bigtable que contiene la tabla.
  • TABLE_ID: Es el ID de la tabla de Bigtable que se exportará.
  • APPLICATION_PROFILE_ID: Es el ID del perfil de la aplicación de Bigtable que se usará para la exportación.
  • SOURCE_PATTERN: Es el patrón de ruta de acceso de Cloud Storage en la que se encuentran los datos, por ejemplo, gs://mybucket/somefolder/prefix*.

Cloud Storage Text a BigQuery

La canalización de Cloud Storage Text a BigQuery es una canalización por lotes que te permite leer archivos de texto almacenados en Cloud Storage, transformarlos con una Función definida por el usuario de JavaScript (UDF) que proporcionas y adjuntar el resultado en una tabla de BigQuery.

Requisitos para esta canalización:

  • Crea un archivo JSON que describa tu esquema de BigQuery.

    Asegúrate de que haya un array JSON de nivel superior titulado BigQuery Schema y que su contenido siga el patrón {"name": "COLUMN_NAME", "type": "DATA_TYPE"}.

    La plantilla de texto de Cloud Storage a BigQuery no admite la importación de datos a los campos STRUCT (Record) en la tabla BigQuery de destino.

    En el siguiente JSON, se describe un esquema de BigQuery de ejemplo:

    {
      "BigQuery Schema": [
        {
          "name": "location",
          "type": "STRING"
        },
        {
          "name": "name",
          "type": "STRING"
        },
        {
          "name": "age",
          "type": "STRING"
        },
        {
          "name": "color",
          "type": "STRING"
        },
        {
          "name": "coffee",
          "type": "STRING"
        }
      ]
    }
    
  • Crea un archivo JavaScript (.js) con tu función UDF que proporciona la lógica para transformar las líneas de texto. La función debe mostrar una string JSON.

    Por ejemplo, esta función divide cada línea de un archivo CSV y muestra una string JSON después de transformar los valores.

    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;
    }

Parámetros de la plantilla

Parámetro Descripción
javascriptTextTransformFunctionName es el nombre de la función definida por el usuario (UDF) de JavaScript que deseas usar. Por ejemplo, si el código de tu función de JavaScript es myTransform(inJson) { /*...do stuff...*/ }, el nombre de la función es myTransform. Para ver ejemplos de UDF de JavaScript, consulta Ejemplos de UDF.
JSONPath Ruta gs:// al archivo JSON que define el esquema BigQuery, almacenado en Cloud Storage. Por ejemplo, gs://path/to/my/schema.json
javascriptTextTransformGcsPath El URI de Cloud Storage del archivo .js que define la función definida por el usuario (UDF) de JavaScript que deseas usar. Por ejemplo, gs://my-bucket/my-udfs/my_file.js.
inputFilePattern Ruta gs:// al texto en Cloud Storage que deseas procesar. Por ejemplo, gs://path/to/my/text/data.txt.
outputTable Nombre de la tabla de BigQuery que quieres crear para almacenar los datos procesados. Si vuelves a usar una tabla de BigQuery existente, los datos se agregan a la tabla de destino. Por ejemplo, my-project-name:my-dataset.my-table.
bigQueryLoadingTemporaryDirectory El directorio temporal para el proceso de carga de BigQuery. Por ejemplo, gs://my-bucket/my-files/temp_dir.

Ejecuta la plantilla de Cloud Storage Text a BigQuery

Consola

  1. Ve a la página Crear un trabajo a partir de una plantilla de Dataflow.
  2. Ir a Crear un trabajo a partir de una plantilla
  3. En el campo Nombre del trabajo, ingresa un nombre de trabajo único.
  4. Opcional: Para Extremo regional, selecciona un valor del menú desplegable. El extremo regional predeterminado es us-central1.

    Para obtener una lista de regiones en las que puedes ejecutar un trabajo de Dataflow, consulta Ubicaciones de Dataflow.

  5. En el menú desplegable Plantilla de Dataflow, selecciona the Text Files on Cloud Storage to BigQuery (Batch) template.
  6. En los campos de parámetros proporcionados, ingresa los valores de tus parámetros.
  7. Haga clic en Ejecutar trabajo.

gcloud

En tu shell o terminal, ejecuta la plantilla:

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

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • REGION_NAME: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • JAVASCRIPT_FUNCTION es el nombre de la función definida por el usuario (UDF) de JavaScript que deseas usar.

    Por ejemplo, si el código de tu función de JavaScript es myTransform(inJson) { /*...do stuff...*/ }, el nombre de la función es myTransform. Para ver ejemplos de UDF de JavaScript, consulta Ejemplos de UDF.

  • PATH_TO_BIGQUERY_SCHEMA_JSON: Es la ruta de acceso de Cloud Storage al archivo JSON que contiene la definición de esquema.
  • PATH_TO_JAVASCRIPT_UDF_FILE: El URI de Cloud Storage de .js archivo que define la función definida por el usuario (UDF) de JavaScript que deseas usar, por ejemplo:gs://my-bucket/my-udfs/my_file.js
  • PATH_TO_TEXT_DATA: Es la ruta de acceso de Cloud Storage al conjunto de datos de texto.
  • BIGQUERY_TABLE: Es el nombre de la tabla de BigQuery.
  • PATH_TO_TEMP_DIR_ON_GCS: Es la ruta de acceso de Cloud Storage al directorio temporal.

API

Para ejecutar la plantilla con la API de REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus permisos de autorización, 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" }
}

Reemplaza lo siguiente:

  • PROJECT_ID: El ID del proyecto de Cloud en el que deseas ejecutar el trabajo de Dataflow.
  • JOB_NAME: Es el nombre del trabajo que elijas
  • VERSION: Es la versión de la plantilla que deseas usar.

    Puedes usar los siguientes valores:

    • latest para usar la última versión de la plantilla, que está disponible en la carpeta superior non-dated en el bucket: gs://dataflow-templates/latest/
    • el nombre de la versión, como 2021-09-20-00_RC00, para usar una versión específica de la plantilla, que se puede encontrar anidada en la carpeta superior con fecha correspondiente en el bucket: gs://dataflow-templates/
  • LOCATION: El extremo regional en el que deseas implementar tu trabajo de Dataflow, por ejemplo, us-central1
  • JAVASCRIPT_FUNCTION es el nombre de la función definida por el usuario (UDF) de JavaScript que deseas usar.

    Por ejemplo, si el código de tu función de JavaScript es myTransform(inJson) { /*...do stuff...*/ }, el nombre de la función es myTransform. Para ver ejemplos de UDF de JavaScript, consulta Ejemplos de UDF.

  • PATH_TO_BIGQUERY_SCHEMA_JSON: Es la ruta de acceso de Cloud Storage al archivo JSON que contiene la definición de esquema.
  • PATH_TO_JAVASCRIPT_UDF_FILE: El URI de Cloud Storage de .js archivo que define la función definida por el usuario (UDF) de JavaScript que deseas usar, por ejemplo:gs://my-bucket/my-udfs/my_file.js
  • PATH_TO_TEXT_DATA: Es la ruta de acceso de Cloud Storage al co