Usar o modelo de fluxo de alterações do Bigtable para o BigQuery

Neste guia de início rápido, você vai aprender a configurar uma tabela do Bigtable com um fluxo de alterações ativado, executar um pipeline de fluxo de alterações, fazer mudanças na tabela e ver as mudanças transmitidas.

Antes de começar

  1. No console do Google Cloud , na página do seletor de projetos, selecione ou crie um projeto do Google Cloud .

    Funções necessárias para selecionar ou criar um projeto

    • Selecionar um projeto: não é necessário um papel específico do IAM para selecionar um projeto. Você pode escolher qualquer projeto em que tenha recebido um papel.
    • Criar um projeto: para criar um projeto, é necessário ter o papel de Criador de projetos (roles/resourcemanager.projectCreator), que contém a permissão resourcemanager.projects.create. Saiba como conceder papéis.

    Acessar o seletor de projetos

  2. Verifique se o faturamento está ativado para o projeto do Google Cloud .

  3. Ative as APIs Dataflow, API Cloud Bigtable, API Cloud Bigtable Admin e API BigQuery.

    Funções necessárias para ativar APIs

    Para ativar as APIs, é necessário ter o papel do IAM de administrador de uso do serviço (roles/serviceusage.serviceUsageAdmin), que contém a permissão serviceusage.services.enable. Saiba como conceder papéis.

    Ativar as APIs

  4. No console do Google Cloud , ative o Cloud Shell.

    Ativar o Cloud Shell

Criar um conjunto de dados do BigQuery

Usar o console do Google Cloud para criar um conjunto de dados que armazene os dados.

  1. No Google Cloud console, acesse a página BigQuery.

    Acessar o BigQuery

  2. No painel Explorer, clique no nome do seu projeto.

  3. Expanda a opção Ações e clique em Criar conjunto de dados.

  4. Na página Criar conjunto de dados, faça o seguinte:

    1. Para o código do conjunto de dados, insira bigtable_bigquery_quickstart.
    2. Mantenha as configurações padrão restantes e clique em Criar conjunto de dados.

Criar uma tabela com um fluxo de alterações ativado

  1. No console do Google Cloud , acesse a página Instâncias do Bigtable.

    Acesse "Instâncias"

  2. Clique no código da instância que você está usando para este guia de início rápido.

    Se você não tiver uma instância disponível, crie uma com as configurações padrão em uma região perto de você.

  3. No painel de navegação à esquerda, clique em Tabelas.

  4. Clique em Criar uma tabela.

  5. Nomeie a tabela como bigquery-changestream-quickstart.

  6. Adicione um grupo de colunas chamado cf.

  7. Selecione Ativar fluxo de alterações.

  8. Clique em Criar.

  9. Na página Tabelas do Bigtable, encontre sua tabela bigquery-changestream-quickstart.

  10. Na coluna Fluxo de alterações, clique em Conectar.

  11. Na caixa de diálogo, selecione BigQuery.

  12. Clique em Criar job do Dataflow.

  13. Nos campos de parâmetro fornecidos, insira os valores de parâmetro. Não é necessário fornecer parâmetros opcionais.

    1. Defina o ID do perfil de aplicativo do Bigtable como default.
    2. Defina o conjunto de dados do BigQuery como bigtable_bigquery_quickstart.
  14. Cliquem em Executar job.

  15. Aguarde o status do job ser Iniciando ou Em execução antes de continuar. Leva cerca de cinco minutos assim que job é colocado na fila.

  16. Mantenha o job aberto em uma guia para poder interrompê-lo ao limpar os recursos.

Gravar alguns dados no Bigtable

  1. No Cloud Shell, escreva algumas linhas no Bigtable para que o registro de alterações possa gravar alguns dados no BigQuery. Se você gravar os dados após a criação do job, as alterações aparecerão. Não é necessário esperar que o status do job seja running.

    cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID \
        set bigquery-changestream-quickstart user123 cf:col1=abc
    cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID \
        set bigquery-changestream-quickstart user546 cf:col1=def
    cbt -instance=BIGTABLE_INSTANCE_ID -project=PROJECT_ID \
        set bigquery-changestream-quickstart user789 cf:col1=ghi
    

    Substitua:

    • PROJECT_ID: o ID do projeto que você está usando.
    • BIGTABLE_INSTANCE_ID: o ID da instância que contém a tabela bigquery-changestream-quickstart.

Ver os registros de alterações no BigQuery

  1. No console do Google Cloud , acesse a página BigQuery.

    Ir para o BigQuery

  2. No painel Explorer, expanda seu projeto e o conjunto de dados bigtable_bigquery_quickstart.

  3. Clique na tabela bigquery-changestream-quickstart_changelog.

  4. Para acessar o registro de alterações, clique em Visualização.

    Visualização do registro de alterações no BigQuery

Limpar

Para evitar cobranças na conta do Google Cloud pelos recursos usados nesta página, siga as etapas abaixo.

  1. Desative o fluxo de alterações na tabela:

    gcloud bigtable instances tables update bigquery-changestream-quickstart \
    --project=PROJECT_ID --instance=BIGTABLE_INSTANCE_ID \
    --clear-change-stream-retention-period
    
  2. Excluir a tabela bigquery-changestream-quickstart:

    cbt --instance=BIGTABLE_INSTANCE_ID --project=PROJECT_ID deletetable bigquery-changestream-quickstart
    
  3. Pare o pipeline de stream de alteração:

    1. No console Google Cloud , acesse a página Jobs do Dataflow.

      Acessar jobs

    2. Selecione o job de streaming na lista de jobs.

    3. Na navegação, clique em Parar.

    4. Na caixa de diálogo Interromper job, selecione Cancelar e clique em Interromper job.

  4. Exclua o conjunto de dados do BigQuery:

    1. No Google Cloud console, acesse a página BigQuery.

      Ir para o BigQuery

    2. No painel Explorer, encontre o conjunto de dados bigtable_bigquery_quickstart e clique nele.

    3. Clique em Excluir, digite delete e clique em Excluir para confirmar.

  5. Opcional: exclua a instância se você criou uma nova para este guia de início rápido:

    cbt deleteinstance BIGTABLE_INSTANCE_ID
    

A seguir