Modelo do Cloud Storage SequenceFile para Bigtable

O modelo Cloud Storage SequenceFile para Bigtable é um pipeline que lê dados de SequenceFiles em um bucket do Cloud Storage e grava os dados em uma tabela do Bigtable. É possível usar o modelo para copiar dados do Cloud Storage para o Bigtable.

Requisitos de pipeline

  • A tabela do Bigtable precisa existir.
  • Os SequenceFiles de entrada precisam existir em um bucket do Cloud Storage antes do pipeline ser executado.
  • Os SequenceFiles de entrada precisam ter sido exportado do Bigtable ou do HBase.

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 gravar os dados.
  • bigtableInstanceId: o ID da instância do Bigtable que contém a tabela.
  • bigtableTableId: o ID da tabela do Bigtable a ser importada.
  • sourcePattern : o padrão de caminho do Cloud Storage para o local dos dados. (Exemplo: gs://your-bucket/your-path/prefix*).

Parâmetros opcionais

  • bigtableAppProfileId: o ID do perfil do aplicativo do Bigtable a ser usado na importaçã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).
  • mutationThrottleLatencyMs: opcional. Define a limitação de latência de mutação (ativa o recurso). Valor em milissegundos. Padrão: 0.

Executar o modelo

Console

  1. Acesse a página Criar job usando um modelo do Dataflow.
  2. Acesse Criar job usando um modelo
  3. No campo Nome do job, insira um nome exclusivo.
  4. 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.

  5. No menu suspenso Modelo do Dataflow, selecione the SequenceFile Files on Cloud Storage to Cloud Bigtable template.
  6. Nos campos de parâmetro fornecidos, insira os valores de parâmetro.
  7. 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/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

Substitua:

  • JOB_NAME: um nome de job de sua escolha
  • VERSION: a versão do modelo que você quer usar

    Use estes valores:

  • 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.
  • SOURCE_PATTERN: o padrão de caminho do Cloud Storage em que os dados estão localizados, por exemplo, gs://mybucket/somefolder/prefix*

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/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" }
}

Substitua:

  • PROJECT_ID: o ID do projeto do Google Cloud em que você quer executar o job do Dataflow
  • JOB_NAME: um nome de job de sua escolha
  • VERSION: a versão do modelo que você quer usar

    Use estes valores:

  • 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.
  • SOURCE_PATTERN: o padrão de caminho do Cloud Storage em que os dados estão localizados, por exemplo, gs://mybucket/somefolder/prefix*

A seguir