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
-
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 theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
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 theserviceusage.services.enable
permission. Learn how to grant roles. -
In the Google Cloud console, 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.
Na Google Cloud consola, aceda à página do BigQuery.
No painel Explorador, clique no nome do projeto.
Expanda a opção
Ações e clique em Criar conjunto de dados.Na página Criar conjunto de dados, faça o seguinte:
- Para o ID do conjunto de dados, introduza
bigtable_bigquery_quickstart
. - Deixe as restantes predefinições como estão e clique em Criar conjunto de dados.
- Para o ID do conjunto de dados, introduza
Crie uma tabela com uma stream de alterações ativada
Na Google Cloud consola, aceda à página Instances do Bigtable.
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.
No painel de navegação do lado esquerdo, clique em Tabelas.
Clique em Criar tabela.
Atribua um nome à tabela
bigquery-changestream-quickstart
.Adicione uma família de colunas com o nome
cf
.Selecione Ativar stream de alterações.
Clique em Criar.
Na página Tabelas do Bigtable, encontre a sua tabela
bigquery-changestream-quickstart
.Na coluna Alterar stream, clique em Associar.
Na caixa de diálogo, selecione BigQuery.
Clique em Criar tarefa do Dataflow.
Nos campos de parâmetros fornecidos, introduza os valores dos parâmetros. Não tem de fornecer parâmetros opcionais.
- Defina o ID do perfil da aplicação do Bigtable como
default
. - Defina o conjunto de dados do BigQuery como
bigtable_bigquery_quickstart
.
- Defina o ID do perfil da aplicação do Bigtable como
Clique em Executar tarefa.
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.
Mantenha a tarefa aberta num separador para poder pará-la quando limpar os seus recursos.
Escreva alguns dados no Bigtable
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
Na Google Cloud consola, aceda à página BigQuery.
No painel Explorador, expanda o projeto e o conjunto de dados
bigtable_bigquery_quickstart
.Clique na tabela
bigquery-changestream-quickstart_changelog
.Para ver o registo de alterações, clique em Pré-visualizar.
Limpar
Para evitar incorrer em cobranças na sua Google Cloud conta pelos recursos usados nesta página, siga estes passos.
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
Elimine a tabela
bigquery-changestream-quickstart
:cbt --instance=BIGTABLE_INSTANCE_ID --project=PROJECT_ID deletetable bigquery-changestream-quickstart
Parar a pipeline de streams de alterações:
Na Google Cloud consola, aceda à página Tarefas do Dataflow.
Selecione a tarefa de streaming na lista de tarefas.
Na navegação, clique em Parar.
Na caixa de diálogo Parar tarefa, selecione Cancelar e, de seguida, clique em Parar tarefa.
Elimine o conjunto de dados do BigQuery:
Na Google Cloud consola, aceda à página do BigQuery.
No painel Explorador, localize o conjunto de dados
bigtable_bigquery_quickstart
e clique no mesmo.Clique em Eliminar, escreva
delete
e, de seguida, clique em Eliminar para confirmar.
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?