GSP1087
Visão geral
O AlloyDB para PostgreSQL é um serviço de banco de dados totalmente gerenciado e compatível com PostgreSQL para suas cargas de trabalho mais exigentes em bancos de dados empresariais. O AlloyDB combina o melhor do Google com um dos mecanismos de banco de dados de código aberto mais usados, o PostgreSQL, para desempenho, escala e disponibilidade superiores.
O mecanismo colunar pode acelerar significativamente a velocidade com que o AlloyDB processa verificações, mesclagens e agregações de SQL. Ele conta com os seguintes recursos: 1) um repositório de colunas que contém dados de tabela para colunas selecionadas, reorganizados em um formato de colunas e 2) um planejador de consultas e um mecanismo de execução em colunas para oferecer suporte ao uso do repositório de colunas em consultas.
Neste laboratório, você vai conhecer os recursos do mecanismo colunar do AlloyDB.
Atividades deste laboratório
Neste laboratório, você aprenderá a fazer o seguinte:
- Criar um conjunto de dados de referência para testar o mecanismo colunar
- Executar um teste de referência
- Verificar a flag do banco de dados do mecanismo colunar
- Definir ou verificar a extensão do banco de dados para o mecanismo colunar
- Testar o mecanismo colunar
Configuração e requisitos
Antes de clicar no botão Começar o Laboratório
Leia estas instruções. Os laboratórios são cronometrados e não podem ser pausados. O timer é ativado quando você clica em Iniciar laboratório e mostra por quanto tempo os recursos do Google Cloud vão ficar disponíveis.
Este laboratório prático permite que você realize as atividades em um ambiente real de nuvem, e não em uma simulação ou demonstração. Você vai receber novas credenciais temporárias para fazer login e acessar o Google Cloud durante o laboratório.
Confira os requisitos para concluir o laboratório:
- Acesso a um navegador de Internet padrão (recomendamos o Chrome).
Observação: para executar este laboratório, use o modo de navegação anônima (recomendado) ou uma janela anônima do navegador. Isso evita conflitos entre sua conta pessoal e de estudante, o que poderia causar cobranças extras na sua conta pessoal.
- Tempo para concluir o laboratório: não se esqueça que, depois de começar, não será possível pausar o laboratório.
Observação: use apenas a conta de estudante neste laboratório. Se usar outra conta do Google Cloud, você poderá receber cobranças nela.
Como iniciar seu laboratório e fazer login no console do Google Cloud
-
Clique no botão Começar o laboratório. Se for preciso pagar por ele, uma caixa de diálogo vai aparecer para você selecionar a forma de pagamento.
No painel Detalhes do Laboratório, à esquerda, você vai encontrar o seguinte:
- O botão Abrir Console do Google Cloud
- O tempo restante
- As credenciais temporárias que você vai usar neste laboratório
- Outras informações, se forem necessárias
-
Se você estiver usando o navegador Chrome, clique em Abrir console do Google Cloud ou clique com o botão direito do mouse e selecione Abrir link em uma janela anônima.
O laboratório ativa os recursos e depois abre a página Fazer Login em outra guia.
Dica: coloque as guias em janelas separadas lado a lado.
Observação: se aparecer a caixa de diálogo Escolher uma conta, clique em Usar outra conta.
-
Se necessário, copie o Nome de usuário abaixo e cole na caixa de diálogo Fazer login.
{{{user_0.username | "Username"}}}
Você também encontra o nome de usuário no painel Detalhes do Laboratório.
-
Clique em Próxima.
-
Copie a Senha abaixo e cole na caixa de diálogo de Olá.
{{{user_0.password | "Password"}}}
Você também encontra a senha no painel Detalhes do Laboratório.
-
Clique em Próxima.
Importante: você precisa usar as credenciais fornecidas no laboratório, e não as da sua conta do Google Cloud.
Observação: se você usar sua própria conta do Google Cloud neste laboratório, é possível que receba cobranças adicionais.
-
Acesse as próximas páginas:
- Aceite os Termos e Condições.
- Não adicione opções de recuperação nem autenticação de dois fatores (porque essa é uma conta temporária).
- Não se inscreva em testes gratuitos.
Depois de alguns instantes, o console do Google Cloud será aberto nesta guia.
Observação: para acessar os produtos e serviços do Google Cloud, clique no Menu de navegação ou digite o nome do serviço ou produto no campo Pesquisar.
Ativar o Cloud Shell
O Cloud Shell é uma máquina virtual com várias ferramentas de desenvolvimento. Ele tem um diretório principal permanente de 5 GB e é executado no Google Cloud. O Cloud Shell oferece acesso de linha de comando aos recursos do Google Cloud.
-
Clique em Ativar o Cloud Shell
na parte de cima do console do Google Cloud.
-
Clique nas seguintes janelas:
- Continue na janela de informações do Cloud Shell.
- Autorize o Cloud Shell a usar suas credenciais para fazer chamadas de APIs do Google Cloud.
Depois de se conectar, você verá que sua conta já está autenticada e que o projeto está configurado com seu Project_ID, . A saída contém uma linha que declara o projeto PROJECT_ID para esta sessão:
Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}
A gcloud é a ferramenta de linha de comando do Google Cloud. Ela vem pré-instalada no Cloud Shell e aceita preenchimento com tabulação.
- (Opcional) É possível listar o nome da conta ativa usando este comando:
gcloud auth list
- Clique em Autorizar.
Saída:
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
To set the active account, run:
$ gcloud config set account `ACCOUNT`
- (Opcional) É possível listar o ID do projeto usando este comando:
gcloud config list project
Saída:
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
Observação: consulte a documentação completa da gcloud no Google Cloud no guia de visão geral da gcloud CLI.
Tarefa 1: criar um conjunto de dados de referência para testar o mecanismo colunar
Neste ambiente de laboratório, você recebe um cluster e uma instância do AlloyDB ao iniciar o laboratório.
- No console do Google Cloud, clique no Menu de navegação
> Ver todos os produtos. Em Bancos de dados, selecione AlloyDB para PostgreSQL.
Na página do AlloyDB, há um cluster chamado lab-cluster e uma instância chamada lab-instance. A criação e inicialização da instância leva alguns minutos.
Aguarde até uma marca de seleção verde (status Pronto) aparecer ao lado da instância lab-instance na coluna Nome do recurso antes de continuar para a próxima etapa.
- Na linha da instância lab-instance, em Endereço IP particular, copie o Endereço IP particular (como
10.100.0.2) em um arquivo de texto para colar o valor em uma próxima etapa. Não inclua os dois pontos e o número da porta (:5432).
Para avaliar os recursos do mecanismo colunar, você precisa de um conjunto de dados de tamanho significativo para medir o desempenho. Nas próximas etapas, você vai usar a ferramenta do PostgreSQL pgbench para gerar um conjunto de dados sintético e avaliar o mecanismo colunar.
-
No Menu de navegação (
), em Compute Engine, clique em Instâncias de VM.
-
Na instância chamada alloydb-client, na coluna Conectar, clique em SSH para abrir uma janela do terminal.
-
Defina a seguinte variável de ambiente, substituindo ALLOYDB_ADDRESS pelo endereço IP privado da instância do AlloyDB.
export ALLOYDB=ALLOYDB_ADDRESS
- Execute o comando a seguir para armazenar o endereço IP privado da instância do AlloyDB na VM do cliente do AlloyDB para que ele persista durante todo o laboratório.
echo $ALLOYDB > alloydbip.txt
- A primeira etapa para usar o pgbench é criar e preencher as tabelas de exemplo. Execute o comando a seguir para criar um conjunto de quatro tabelas. Será solicitada a senha do usuário postgres, que é Change3Me.
A maior tabela, pgbench_accounts, será carregada com 50 milhões de linhas. A operação leva alguns minutos para ser concluída.
pgbench -h $ALLOYDB -U postgres -i -s 500 -F 90 -n postgres
dropping old tables...
NOTICE: table "pgbench_accounts" does not exist, skipping
NOTICE: table "pgbench_branches" does not exist, skipping
NOTICE: table "pgbench_history" does not exist, skipping
NOTICE: table "pgbench_tellers" does not exist, skipping
creating tables...
generating data (client-side)...
50000000 of 50000000 tuples (100%) done (elapsed 91.26 s, remaining 0.00 s)
creating primary keys...
done in 167.61 s (drop tables 0.00 s, create tables 0.01 s, client-side generate 93.16 s, primary keys 74.43 s).
- Conecte-se ao cliente psql e execute a consulta a seguir para verificar a contagem de linhas na tabela pgbench_accounts. Será solicitada a senha do usuário postgres, que é Change3Me.
psql -h $ALLOYDB -U postgres
select count (*) from pgbench_accounts;
count
----------
50000000
(1 row)
Clique em Verificar meu progresso para conferir o objetivo.
Criar um conjunto de dados de referência
Tarefa 2: executar um teste de referência
Para fins de avaliação, execute uma consulta simples que faça verificações sequenciais e use planos de consulta de explicação antes e depois de adicionar a tabela de teste ao mecanismo colunar.
- Volte para o shell alloydb-client. O cliente psql ainda precisa estar ativo. Caso contrário, reconecte usando as instruções na Tarefa 1. Execute a consulta abaixo para ativar as marcações de tempo em todas as operações de consulta.
\timing on
- Depois, execute a consulta abaixo para avaliar o tempo de execução. Essa consulta realiza verificações sequenciais de toda a tabela pgbench_accounts.
Observação: como esta consulta de exemplo é para fins de demonstração, ela tem um limite de 20 linhas retornadas.
SELECT aid, bid, abalance FROM pgbench_accounts WHERE bid < 189 OR abalance > 100 LIMIT 20;
aid | bid | abalance
-----+-----+----------
1 | 1 | 0
2 | 1 | 0
3 | 1 | 0
4 | 1 | 0
5 | 1 | 0
6 | 1 | 0
7 | 1 | 0
8 | 1 | 0
9 | 1 | 0
10 | 1 | 0
11 | 1 | 0
12 | 1 | 0
13 | 1 | 0
14 | 1 | 0
15 | 1 | 0
16 | 1 | 0
17 | 1 | 0
18 | 1 | 0
19 | 1 | 0
20 | 1 | 0
(20 rows)
- Execute a consulta abaixo para gerar um plano de explicação em uma consulta sem restrições. Os valores aparecem de forma semelhante aos do exemplo de resposta, mas variam devido à natureza aleatória da geração dos dados.
Observação: talvez seja necessário pressionar a barra de espaço para continuar o plano de explicação da consulta.
EXPLAIN (ANALYZE,COSTS,SETTINGS,BUFFERS,TIMING,SUMMARY,WAL,VERBOSE)
SELECT count(*) FROM pgbench_accounts WHERE bid < 189 OR abalance > 100;
QUERY PLAN
---------------------------------------------------------------------------------------------------------------
---------------------------------------------------
Finalize Aggregate (cost=1242226.53..1242226.54 rows=1 width=8) (actual time=11010.409..11014.083 rows=1 loop
s=1)
Output: count(*)
Buffers: shared hit=20921 read=888170
I/O Timings: read=19536.769
-> Gather (cost=1242226.32..1242226.53 rows=2 width=8) (actual time=11010.398..11014.075 rows=3 loops=1)
Output: (PARTIAL count(*))
Workers Planned: 2
Workers Launched: 2
Buffers: shared hit=20921 read=888170
I/O Timings: read=19536.769
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!! Section removed for pasting !!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Filter: ((pgbench_accounts.bid < 189) OR (pgbench_accounts.abalance > 100))
Rows Removed by Filter: 10400000
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!! Section removed for pasting !!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Buffers: shared hit=6
Planning Time: 0.117 ms
Execution Time: 11014.169 ms
(38 rows)
-
Nos resultados, preste atenção especial aos valores de Tempo de planejamento e Tempo de execução. No exemplo de resposta, o Tempo de planejamento é de 0,117 milissegundos, enquanto o Tempo de execução é de 11.014,169 milissegundos ou 11,014 segundos. Os valores aparecem de forma semelhante aos do exemplo de resposta, mas variam devido à natureza aleatória da geração dos dados.
-
Copie os valores do Tempo de planejamento e do Tempo de execução da execução para um arquivo de texto para compará-los com os resultados depois que o mecanismo colunar for ativado. Você também pode copiar todos os resultados do plano de consulta para um arquivo de texto.
-
Pressione a tecla Q para fechar o plano de consulta.
Tarefa 3: verificar a flag do banco de dados do mecanismo colunar
Nesta tarefa, você vai analisar a flag do banco de dados do mecanismo colunar na instância.
-
No console do Google Cloud, clique no Menu de navegação (
) > Ver todos os produtos. Em Bancos de dados, selecione AlloyDB para PostgreSQL.
-
Na linha da instância lab-instance, clique em Ações (ícone com três pontos verticais) e em Editar.
-
Expanda a seção Opções de configuração avançadas.
-
Em Flags, clique em Adicionar um flag de banco de dados.
-
Clique em Escolher flag para ver a lista de flags disponíveis e opções compatíveis.
A flag google_columnar_engine.enabled já está ativada (status on). Você não vai adicionar uma nova flag como parte deste laboratório.
- Clique em Cancelar para sair da página Edição da instância.
Tarefa 4: definir ou verificar uma extensão de banco de dados para o mecanismo colunar
Dando continuidade à seção anterior, você vai configurar uma extensão de banco de dados para ativar totalmente o recurso de mecanismo colunar no cluster do AlloyDB.
Ao contrário da configuração de uma flag, é necessário se conectar à instância pelo cliente psql para ativar uma extensão de banco de dados.
-
Volte para o shell alloydb-client. O cliente psql ainda precisa estar ativo. Caso contrário, reconecte usando as instruções na Tarefa 1.
-
Verifique se você se conectou ao banco de dados postgres com a consulta abaixo.
\c postgres
- Execute a consulta de sistema abaixo para conferir mais informações sobre as extensões ativadas no banco de dados.
Observação: a lista de extensões pode variar.
\dx
List of installed extensions
Name | Version | Schema | Description
------------------------+---------+------------+---------------------------------------
google_columnar_engine | 1.0 | public | Google extension for columnar engine
google_db_advisor | 1.0 | public | Google extension for Database Advisor
hypopg | 1.3.2 | public | Hypothetical indexes for PostgreSQL
plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural language
(4 rows)
- Se google_columnar_engine aparecer na lista, pule para a próxima tarefa (Tarefa 5). Se google_columnar_engine não aparecer na lista, execute o comando abaixo.
CREATE EXTENSION IF NOT EXISTS google_columnar_engine;
- Execute a consulta de extensão novamente para confirmar se a extensão google_columnar_engine está ativada.
\dx
Tarefa 5: testar o mecanismo colunar
Como a tabela principal (pgbench_accounts) é relativamente pequena, você pode adicioná-la direto ao mecanismo colunar para avaliação. Em uma implantação real, você usaria a estrutura de recomendações do mecanismo colunar para identificar automaticamente as colunas mais usadas em todas as tabelas que aproveitariam ao máximo a gestão pelo mecanismo.
- Volte para o shell alloydb-client. Execute a consulta abaixo para adicionar pgbench_accounts ao mecanismo colunar. A consulta leva alguns minutos para ser concluída.
SELECT google_columnar_engine_add('pgbench_accounts');
- Depois, execute a mesma consulta de plano de explicação de antes para conferir os efeitos do mecanismo colunar. Os valores aparecem de forma semelhante aos do exemplo de resposta, mas variam devido à natureza aleatória da geração dos dados.
EXPLAIN (ANALYZE,COSTS,SETTINGS,BUFFERS,TIMING,SUMMARY,WAL,VERBOSE)
SELECT count(*) FROM pgbench_accounts WHERE bid < 189 OR abalance > 100;
QUERY PLAN
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Finalize Aggregate (cost=142400.72..142400.73 rows=1 width=8) (actual time=75.948..78.680 rows=1 loops=1)
Output: count(*)
-> Gather (cost=142400.51..142400.72 rows=2 width=8) (actual time=71.555..78.667 rows=3 loops=1)
Output: (PARTIAL count(*))
Workers Planned: 2
Workers Launched: 2
-> Partial Aggregate (cost=141400.51..141400.52 rows=1 width=8) (actual time=45.768..45.771 rows=1 loops=3)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Section removed for pasting
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Rows Removed by Columnar Filter: 10400000
Rows Aggregated by Columnar Scan: 4505600
Columnar cache search mode: native
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Section removed for pasting
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Buffers: shared hit=22 read=3 dirtied=1
I/O Timings: read=0.560
Planning Time: 2.022 ms
Execution Time: 78.804 ms
(29 rows)
-
Nos resultados, preste atenção especial aos valores de Tempo de planejamento e Tempo de execução. No exemplo do após o mecanismo colunar, o Tempo de planejamento é de 2.022 milissegundos, enquanto o Tempo de execução é de 78.804 milissegundos. Os valores aparecem de forma semelhante aos do exemplo de resposta, mas variam devido à natureza aleatória da geração dos dados.
-
Com base nos exemplos, a diferença entre o tempo de execução antes e depois do mecanismo de colunas é de 10.935,365 ms ou 10,9 segundos, o que representa uma redução de 141 vezes. No exemplo após o mecanismo colunar, observe que mais de 4,5 milhões de linhas foram agregadas usando uma verificação colunar em vez do mecanismo de banco de dados principal.
Clique em Verificar meu progresso para conferir o objetivo.
Testar o mecanismo colunar
Observação: se a sua pontuação não for atualizada depois que você concluir todas as tarefas, abra a caixa Checkpoints (a barra lateral amarela à direita da página) e clique em Verificar meu progresso em cada tarefa para atualizar a pontuação.
Parabéns!
Agora você já conhece os recursos avançados do mecanismo colunar do AlloyDB.
Treinamento e certificação do Google Cloud
Esses treinamentos ajudam você a aproveitar as tecnologias do Google Cloud ao máximo. Nossas aulas incluem habilidades técnicas e práticas recomendadas para ajudar você a alcançar rapidamente o nível esperado e continuar sua jornada de aprendizado. Oferecemos treinamentos que vão do nível básico ao avançado, com opções de aulas virtuais, sob demanda e por meio de transmissões ao vivo para que você possa encaixá-las na correria do seu dia a dia. As certificações validam sua experiência e comprovam suas habilidades com as tecnologias do Google Cloud.
Manual atualizado em 16 de janeiro de 2026
Laboratório testado em 15 de dezembro de 2025
Copyright 2026 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de produtos e empresas podem ser marcas registradas das respectivas empresas a que estão associados.