O modelo Bigtable para o Cloud Storage SequenceFile é um pipeline que lê dados de uma tabela do Bigtable e grava os dados em um bucket do Cloud Storage no formato SequenceFile. É possível usar o modelo para copiar dados do Bigtable para o Cloud Storage.
Requisitos de pipeline
- A tabela do Bigtable precisa existir.
- O bucket de saída do Cloud Storage precisa existir antes da execução do pipeline.
Parâmetros do modelo
Parâmetros obrigatórios
- bigtableProject: o ID do projeto do Google Cloud que contém a instância do Bigtable em que você quer ler os dados.
- bigtableInstanceId: o ID da instância do Bigtable que contém a tabela.
- bigtableTableId: o ID da tabela do Cloud Bigtable a ser exportada.
- destinationPath: o caminho do Cloud Storage em que os dados são gravados. Exemplo: gs://your-bucket/your-path/.
- filenamePrefix: o prefixo do nome de arquivo do SequenceFile. (Exemplo: output-).
Parâmetros opcionais
- bigtableAppProfileId: o ID do perfil do aplicativo do Bigtable a ser usado na exportação. Se você não especificar um perfil de aplicativo, o Bigtable usará o perfil de aplicativo padrão da instância: https://cloud.google.com/bigtable/docs/app-profiles#default-app-profile.
- bigtableStartRow: a linha de onde a exportação é iniciada. O padrão é a primeira linha.
- bigtableStopRow: a linha em que a exportação será interrompida. O padrão é a última linha.
- bigtableMaxVersions: número máximo de versões de células. O padrão é: 2147483647.
- bigtableFilter: string de filtro. Consulte: http://hbase.apache.org/book.html#thrift. O padrão é vazio.
Executar o modelo
- Acesse a página Criar job usando um modelo do Dataflow. Acesse Criar job usando um modelo
- No campo Nome do job, insira um nome exclusivo.
- Opcional: em Endpoint regional, selecione um valor no menu suspenso. A região padrão é
us-central1
.Para ver uma lista de regiões em que é possível executar um job do Dataflow, consulte Locais do Dataflow.
- No menu suspenso Modelo do Dataflow, selecione the Cloud Bigtable to SequenceFile Files on Cloud Storage template .
- Nos campos de parâmetro fornecidos, insira os valores de parâmetro.
- Cliquem em Executar job.
No shell ou no terminal, execute o modelo:
gcloud dataflow jobs runJOB_NAME \ --gcs-location gs://dataflow-templates-REGION_NAME /VERSION /Cloud_Bigtable_to_GCS_SequenceFile \ --regionREGION_NAME \ --parameters \ bigtableProject=BIGTABLE_PROJECT_ID ,\ bigtableInstanceId=INSTANCE_ID ,\ bigtableTableId=TABLE_ID ,\ bigtableAppProfileId=APPLICATION_PROFILE_ID ,\ destinationPath=DESTINATION_PATH ,\ filenamePrefix=FILENAME_PREFIX
Substitua:
JOB_NAME
: um nome de job de sua escolhaVERSION
: a versão do modelo que você quer usarUse estes valores:
latest
para usar a versão mais recente do modelo, disponível na pasta mãe não datada no bucket: gs://dataflow-templates-REGION_NAME/latest/- o nome da versão, como
2023-09-12-00_RC00
, para usar uma versão específica do modelo, que pode ser encontrada aninhada na respectiva pasta mãe datada no bucket: gs://dataflow-templates-REGION_NAME/
REGION_NAME
: a região em que você quer implantar o job do Dataflow, por exemplo,us-central1
BIGTABLE_PROJECT_ID
: o ID do projeto do Google Cloud da instância do Bigtable da qual você quer ler os dados.INSTANCE_ID
: o ID da instância do Bigtable que contém a tabela.TABLE_ID
: o ID da tabela do Cloud Bigtable a ser exportada.APPLICATION_PROFILE_ID
: o ID do perfil do aplicativo Bigtable a ser usado para a exportação.DESTINATION_PATH
: o caminho do Cloud Storage em que os dados são gravados, por exemplo,gs://mybucket/somefolder
.FILENAME_PREFIX
: prefixo do nome de arquivo do SequenceFile, por exemplo,output-
Para executar o modelo usando a API REST, envie uma solicitação HTTP POST. Para mais informações sobre a
API e os respectivos escopos de autorização, consulte
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" } }
Substitua:
PROJECT_ID
: o ID do projeto do Google Cloud em que você quer executar o job do DataflowJOB_NAME
: um nome de job de sua escolhaVERSION
: a versão do modelo que você quer usarUse estes valores:
latest
para usar a versão mais recente do modelo, disponível na pasta mãe não datada no bucket: gs://dataflow-templates-REGION_NAME/latest/- o nome da versão, como
2023-09-12-00_RC00
, para usar uma versão específica do modelo, que pode ser encontrada aninhada na respectiva pasta mãe datada no bucket: gs://dataflow-templates-REGION_NAME/
LOCATION
: a região em que você quer implantar o job do Dataflow, por exemplo,us-central1
BIGTABLE_PROJECT_ID
: o ID do projeto do Google Cloud da instância do Bigtable da qual você quer ler os dados.INSTANCE_ID
: o ID da instância do Bigtable que contém a tabela.TABLE_ID
: o ID da tabela do Cloud Bigtable a ser exportada.APPLICATION_PROFILE_ID
: o ID do perfil do aplicativo Bigtable a ser usado para a exportação.DESTINATION_PATH
: o caminho do Cloud Storage em que os dados são gravados, por exemplo,gs://mybucket/somefolder
.FILENAME_PREFIX
: prefixo do nome de arquivo do SequenceFile, por exemplo,output-
Código-fonte do modelo
O código-fonte desse modelo está disponível no GitHub, dentro do repositório GoogleCloudPlatform/cloud-bigtable-client.
A seguir
- Saiba mais sobre os modelos do Dataflow.
- Confira a lista de modelos fornecidos pelo Google.