La plantilla de Bigtable a SequenceFile de Cloud Storage es una canalización que lee datos de una tabla de Bigtable y los escribe en un bucket de Cloud Storage en formato SequenceFile. Puedes usar la plantilla para copiar datos de Bigtable en Cloud Storage.
Requisitos del flujo de procesamiento
- La tabla de Bigtable debe existir.
- El segmento de Cloud Storage de salida debe existir antes de ejecutar el flujo de procesamiento.
Parámetros de plantilla
Parámetros obligatorios
- bigtableProject el ID del proyecto de Google Cloud que contiene la instancia de Bigtable de la que quieres leer datos.
- bigtableInstanceId el ID de la instancia de Bigtable que contiene la tabla.
- bigtableTableId: ID de la tabla de Bigtable que se va a exportar.
- destinationPath ruta de Cloud Storage en la que se escriben los datos. Por ejemplo,
gs://your-bucket/your-path/
. - filenamePrefix el prefijo del nombre de archivo de SequenceFile. Por ejemplo,
output-
.
Parámetros opcionales
- bigtableAppProfileId: ID del perfil de aplicación de Bigtable que se va a usar para la exportación. Si no especificas un perfil de aplicación, Bigtable usará el perfil de aplicación predeterminado de la instancia: https://cloud.google.com/bigtable/docs/app-profiles#default-app-profile.
- bigtableStartRow fila desde la que se debe iniciar la exportación. El valor predeterminado es la primera fila.
- bigtableStopRow la fila en la que se detendrá la exportación. El valor predeterminado es la última fila.
- bigtableMaxVersions número máximo de versiones de celdas. El valor predeterminado es 2147483647.
- bigtableFilter cadena de filtro. Consulta http://hbase.apache.org/book.html#thrift. El valor predeterminado es una cadena vacía.
Ejecutar la plantilla
Consola
- Ve a la página Crear tarea a partir de plantilla de Dataflow. Ir a Crear tarea a partir de plantilla
- En el campo Nombre de la tarea, introduce un nombre único.
- Opcional: En Endpoint regional, seleccione un valor en el menú desplegable. La región predeterminada es
us-central1
.Para ver una lista de las regiones en las que puedes ejecutar una tarea de Dataflow, consulta Ubicaciones de Dataflow.
- En el menú desplegable Plantilla de flujo de datos, seleccione the Cloud Bigtable to SequenceFile Files on Cloud Storage template .
- En los campos de parámetros proporcionados, introduzca los valores de los parámetros.
- Haz clic en Ejecutar trabajo.
gcloud
En tu shell o terminal, ejecuta la plantilla:
gcloud dataflow jobs run JOB_NAME \ --gcs-location gs://dataflow-templates-REGION_NAME/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
Haz los cambios siguientes:
JOB_NAME
: un nombre de trabajo único que elijasVERSION
: la versión de la plantilla que quieres usarPuedes usar los siguientes valores:
latest
para usar la última versión de la plantilla, que está disponible en la carpeta principal sin fecha del contenedor: gs://dataflow-templates-REGION_NAME/latest/- el nombre de la versión, como
2023-09-12-00_RC00
, para usar una versión específica de la plantilla, que se encuentra anidada en la carpeta principal correspondiente con la fecha en el bucket: gs://dataflow-templates-REGION_NAME/
REGION_NAME
: la región en la que quieras desplegar tu trabajo de Dataflow. Por ejemplo,us-central1
BIGTABLE_PROJECT_ID
: el ID del Google Cloud proyecto de la instancia de Bigtable de la que quieres leer datos.INSTANCE_ID
: el ID de la instancia de Bigtable que contiene la tabla.TABLE_ID
: el ID de la tabla de Bigtable que se va a exportar.APPLICATION_PROFILE_ID
: el ID del perfil de aplicación de Bigtable que se usará para la exportación.DESTINATION_PATH
: ruta de Cloud Storage en la que se escriben los datos. Por ejemplo,gs://mybucket/somefolder
.FILENAME_PREFIX
: el prefijo del nombre de archivo SequenceFile. Por ejemplo,output-
.
API
Para ejecutar la plantilla mediante la API REST, envía una solicitud HTTP POST. Para obtener más información sobre la API y sus ámbitos de autorización, consulta projects.templates.launch
.
POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/LOCATION/templates:launch?gcsPath=gs://dataflow-templates-LOCATION/VERSION/Cloud_Bigtable_to_GCS_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" } }
Haz los cambios siguientes:
PROJECT_ID
: el ID del proyecto Google Cloud en el que quieres ejecutar la tarea de DataflowJOB_NAME
: un nombre de trabajo único que elijasVERSION
: la versión de la plantilla que quieres usarPuedes usar los siguientes valores:
latest
para usar la última versión de la plantilla, que está disponible en la carpeta principal sin fecha del contenedor: gs://dataflow-templates-REGION_NAME/latest/- el nombre de la versión, como
2023-09-12-00_RC00
, para usar una versión específica de la plantilla, que se encuentra anidada en la carpeta principal correspondiente con la fecha en el bucket: gs://dataflow-templates-REGION_NAME/
LOCATION
: la región en la que quieras desplegar tu trabajo de Dataflow. Por ejemplo,us-central1
BIGTABLE_PROJECT_ID
: el ID del Google Cloud proyecto de la instancia de Bigtable de la que quieres leer datos.INSTANCE_ID
: el ID de la instancia de Bigtable que contiene la tabla.TABLE_ID
: el ID de la tabla de Bigtable que se va a exportar.APPLICATION_PROFILE_ID
: el ID del perfil de aplicación de Bigtable que se usará para la exportación.DESTINATION_PATH
: ruta de Cloud Storage en la que se escriben los datos. Por ejemplo,gs://mybucket/somefolder
.FILENAME_PREFIX
: el prefijo del nombre de archivo SequenceFile. Por ejemplo,output-
.
Siguientes pasos
- Consulta información sobre las plantillas de Dataflow.
- Consulta la lista de plantillas proporcionadas por Google.