O modelo do Bigtable para Cloud Storage Parquet é um pipeline que lê dados de uma tabela do Bigtable e os grava em um bucket do Cloud Storage no formato Parquet. É possível usar o modelo para mover 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
- bigtableProjectId: o ID do projeto do Google Cloud que contém a instância do Cloud Bigtable em que você quer ler dados.
- bigtableInstanceId: o ID da instância do Cloud Bigtable que contém a tabela.
- bigtableTableId: o ID da tabela do Cloud Bigtable a ser exportada.
- outputDirectory: o caminho e o prefixo do nome do arquivo para gravar arquivos de saída. Precisa terminar com uma barra. A formatação DateTime é usada para analisar o caminho do diretório em busca de formatadores de data e hora. Por exemplo: gs://your-bucket/your-path.
- filenamePrefix: o prefixo do nome do arquivo Parquet. Por exemplo, "table1-". O padrão é: part.
Parâmetros opcionais
- numShards: o número máximo de fragmentos de saída produzidos durante a gravação. Um número maior de fragmentos significa maior capacidade de gravação no Cloud Storage, mas um custo de agregação de dados potencialmente maior entre os fragmentos ao processar os arquivos de saída do Cloud Storage. O valor padrão é decidido pelo Dataflow.
- 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.
Executar o modelo
Console
- 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 Parquet Files on Cloud Storage template.
- Nos campos de parâmetro fornecidos, insira os valores de parâmetro.
- Cliquem em Executar job.
gcloud
No shell ou no terminal, execute o modelo:
gcloud dataflow jobs run JOB_NAME \ --gcs-location gs://dataflow-templates-REGION_NAME/VERSION/Cloud_Bigtable_to_GCS_Parquet \ --region REGION_NAME \ --parameters \ bigtableProjectId=BIGTABLE_PROJECT_ID,\ bigtableInstanceId=INSTANCE_ID,\ bigtableTableId=TABLE_ID,\ outputDirectory=OUTPUT_DIRECTORY,\ filenamePrefix=FILENAME_PREFIX,\ numShards=NUM_SHARDS
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.OUTPUT_DIRECTORY
: o caminho do Cloud Storage em que os dados são gravados, por exemplo,gs://mybucket/somefolder
.FILENAME_PREFIX
: prefixo do nome de arquivo Parquet, por exemplo,output-
.NUM_SHARDS
: o número de arquivos Parquet a serem gerados, por exemplo,1
.
API
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_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" } }
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.OUTPUT_DIRECTORY
: o caminho do Cloud Storage em que os dados são gravados, por exemplo,gs://mybucket/somefolder
.FILENAME_PREFIX
: prefixo do nome de arquivo Parquet, por exemplo,output-
.NUM_SHARDS
: o número de arquivos Parquet a serem gerados, por exemplo,1
.
A seguir
- Saiba mais sobre os modelos do Dataflow.
- Confira a lista de modelos fornecidos pelo Google.