Use o modelo de stream de alterações do Bigtable para o BigQuery

Neste início rápido, vai aprender a configurar uma tabela do Bigtable com uma stream de alterações ativada, executar um pipeline de streams de alterações, fazer alterações à sua tabela e, em seguida, ver as alterações transmitidas.

Antes de começar

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. Verify that billing is enabled for your Google Cloud project.

  3. Enable the Dataflow, Cloud Bigtable API, Cloud Bigtable Admin API, and BigQuery APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  4. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    Crie um conjunto de dados do BigQuery

    Use a Google Cloud consola para criar um conjunto de dados que armazene os dados.

    1. Na Google Cloud consola, aceda à página do BigQuery.

      Aceda ao BigQuery

    2. No painel Explorador, clique no nome do 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 ID do conjunto de dados, introduza bigtable_bigquery_quickstart.
      2. Deixe as restantes predefinições como estão e clique em Criar conjunto de dados.

    Crie uma tabela com uma stream de alterações ativada

    1. Na Google Cloud consola, aceda à página Instances do Bigtable.

      Aceda a Instâncias

    2. Clique no ID da instância que está a usar para este início rápido.

      Se não tiver uma instância disponível, crie uma instância com as configurações predefinidas numa região perto de si.

    3. No painel de navegação do lado esquerdo, clique em Tabelas.

    4. Clique em Criar tabela.

    5. Atribua um nome à tabela bigquery-changestream-quickstart.

    6. Adicione uma família de colunas com o nome cf.

    7. Selecione Ativar stream de alterações.

    8. Clique em Criar.

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

    10. Na coluna Alterar stream, clique em Associar.

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

    12. Clique em Criar tarefa do Dataflow.

    13. Nos campos de parâmetros fornecidos, introduza os valores dos parâmetros. Não tem de fornecer parâmetros opcionais.

      1. Defina o ID do perfil da aplicação do Bigtable como default.
      2. Defina o conjunto de dados do BigQuery como bigtable_bigquery_quickstart.
    14. Clique em Executar tarefa.

    15. Aguarde até que o estado da tarefa seja A iniciar ou Em execução antes de continuar. Demora cerca de 5 minutos assim que a tarefa é colocada em fila.

    16. Mantenha a tarefa aberta num separador para poder pará-la quando limpar os seus recursos.

    Escreva alguns dados no Bigtable

    1. No Cloud Shell, escreva algumas linhas no Bigtable para que o registo de alterações possa escrever alguns dados no BigQuery. Desde que escreva os dados após a criação da tarefa, as alterações aparecem. Não tem de esperar que o estado da tarefa 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 o seguinte:

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

    Veja os registos de alterações no BigQuery

    1. Na Google Cloud consola, aceda à página BigQuery.

      Aceder ao BigQuery

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

    3. Clique na tabela bigquery-changestream-quickstart_changelog.

    4. Para ver o registo de alterações, clique em Pré-visualizar.

      Pré-visualização do registo de alterações no BigQuery

    Limpar

    Para evitar incorrer em cobranças na sua Google Cloud conta pelos recursos usados nesta página, siga estes passos.

    1. Desative a stream 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. Elimine a tabela bigquery-changestream-quickstart:

      cbt --instance=BIGTABLE_INSTANCE_ID --project=PROJECT_ID deletetable bigquery-changestream-quickstart
      
    3. Parar a pipeline de streams de alterações:

      1. Na Google Cloud consola, aceda à página Tarefas do Dataflow.

        Aceder a Empregos

      2. Selecione a tarefa de streaming na lista de tarefas.

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

      4. Na caixa de diálogo Parar tarefa, selecione Cancelar e, de seguida, clique em Parar tarefa.

    4. Elimine o conjunto de dados do BigQuery:

      1. Na Google Cloud consola, aceda à página do BigQuery.

        Aceder ao BigQuery

      2. No painel Explorador, localize o conjunto de dados bigtable_bigquery_quickstart e clique no mesmo.

      3. Clique em Eliminar, escreva delete e, de seguida, clique em Eliminar para confirmar.

    5. Opcional: elimine a instância se tiver criado uma nova para este início rápido:

      cbt deleteinstance BIGTABLE_INSTANCE_ID
      

    O que se segue?