Checkpoints
Create and use an external table
/ 60
Import data via the console
/ 40
Conhecer um lakehouse
Conclua este laboratório prático usando um computador ou notebook.
Só 5 tentativas são permitidas por laboratório.
É comum não acertar todas as questões na primeira tentativa e precisar refazer uma tarefa. Isso faz parte do processo de aprendizado.
Depois que o laboratório é iniciado, não é possível pausar o tempo. Depois de 1h30, o laboratório será finalizado, e você vai precisar recomeçar.
Para saber mais, confira as Dicas técnicas do laboratório.
Informações gerais da atividade
Como analista de dados em nuvem, você provavelmente vai encontrar três principais arquiteturas de dados: data lakes, data warehouses e lakehouses.
Um data lake é um sistema de banco de dados que armazena grandes quantidades de dados brutos no formato original até que sejam necessários. Um princípio fundamental é coletar os dados primeiro e decidir o que é útil depois.
Um data warehouse é um banco de dados que consolida dados de sistemas de várias fontes para oferecer consistência, precisão e acesso eficiente. Um princípio fundamental é selecionar e organizar dados que sabemos que são úteis e confiáveis.
Um lakehouse é uma arquitetura de dados híbrida que combina os recursos de um data lake com os de um data warehouse.
O Cloud Storage é uma ótima ferramenta para um data lake. O BigQuery pode ser configurado como data warehouse, data lake ou lakehouse.
Neste exercício, você vai combinar dados armazenados em um data lake do Cloud Storage com dados armazenados em um data warehouse do BigQuery para aprender como integrar dados de diferentes fontes e armazená-los de forma otimizada para a análise. Depois, você vai conhecer essa arquitetura híbrida para saber como lakehouses funcionam.
Cenário
Você é analista de dados em nuvem na TheLook eCommerce, uma empresa global de vestuário especializada em moda inovadora e com fornecedores éticos e sustentáveis.
Meredith, a líder da área de produtos, pediu para você ajudá-la a realizar uma série de tarefas para entender quais produtos estão sendo vendidos, quais estão sendo devolvidos e garantir que o custo de cada produto está atualizado.
Para isso, será preciso combinar dados de um data lake e de um data warehouse. Assim, você vai usar o BigQuery como lakehouse. Você pode usar essa arquitetura híbrida para encontrar os dados que resolvem as preocupações da Meredith.
Depois de receber a tarefa, você pede orientação para Artem, o arquiteto de dados.
Ele explica que uma tabela externa só aponta para os dados armazenados em outro lugar, como um data lake. Neste caso, provavelmente o melhor para você seria armazenar os dados em uma tabela padrão do BigQuery, porque é mais fácil de gerenciar e atualizar.
Meredith também pediu para você importar os dados de um arquivo CSV para atualizar os custos dos produtos. Após isso, você pergunta ao Artem se é melhor usar uma tabela externa para isso também.
Ele explica que uma tabela externa só aponta para os dados armazenados em outro lugar, como um data lake. Neste caso, provavelmente o melhor para você seria armazenar os dados em uma tabela padrão do BigQuery, porque é mais fácil de gerenciar e atualizar.
Você agradece ao Artem e já pode realizar as tarefas que a Meredith pediu.
Saiba como você vai executar esta tarefa. Primeiro, você vai criar uma tabela externa que aponta para os dados armazenados em um data lake. Depois, você vai mesclar a tabela externa com uma tabela padrão do BigQuery e conferir os dados combinados. Por fim, você vai importar os dados de um arquivo CSV para uma tabela padrão do BigQuery para entender melhor a diferença entre tabelas externas e padrão no BigQuery.
Configuração
Antes de clicar em "Começar o laboratório"
Leia as instruções a seguir. Os laboratórios são cronometrados e não podem ser pausados. O timer é iniciado quando você clica em Começar o laboratório e mostra por quanto tempo os recursos do Google Cloud vão ficar disponíveis.
Neste laboratório prático, você pode fazer as atividades por conta própria em um ambiente cloud de verdade, 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).
- Tempo para concluir o laboratório---não se esqueça: depois de começar, não será possível pausar o laboratório.
Como iniciar seu laboratório e fazer login no console do Google Cloud
-
Clique no botão Começar o laboratório. No painel Detalhes do laboratório à esquerda, você verá o seguinte:
- Tempo restante
- O botão Abrir console do Google Cloud
- As credenciais temporárias que você vai usar neste laboratório
- Outras informações, se forem necessárias
Observação: se for preciso pagar pelo laboratório, um pop-up vai aparecer para você escolher a forma de pagamento. -
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). A página de login será aberta em uma nova guia do navegador.
Dica: é possível organizar as guias em janelas separadas, lado a lado, para alternar facilmente entre elas.
Observação: se a caixa de diálogo Escolha uma conta aparecer, clique em Usar outra conta. -
Se necessário, copie o Nome de usuário do Google Cloud abaixo e cole na caixa de diálogo de login. Clique em Próximo.
Você também encontra o Nome de usuário do Google Cloud no painel Detalhes do laboratório.
- Copie a Senha do Google Cloud abaixo e cole na caixa de diálogo seguinte. Clique em Próximo.
Você também encontra a Senha do Google Cloud no painel Detalhes do laboratório.
- Nas próximas páginas:
- Aceite os Termos e Condições
- Não adicione opções de recuperação nem autenticação de dois fatores nesta conta temporária
- Não se inscreva em testes gratuitos
Depois de alguns instantes, o console será aberto nesta guia.
Tarefa 1: crie e use uma tabela externa
Depois de uma análise de dados preliminar, Meredith está preocupada com o grande número de calças jeans sendo devolvidas. Para ajudar a entender melhor a situação e quais centros de distribuição têm mais devoluções, Meredith pediu para você criar um relatório detalhando quantas devoluções de produtos foram feitas para a categoria jeans em cada centro de distribuição. As informações de devoluções são armazenadas como um data lake usando o Cloud Storage. As informações de distribuição são armazenadas como um data warehouse em uma tabela padrão do BigQuery.
Nesta tarefa, você vai criar uma tabela externa para apontar para os dados armazenados no Cloud Storage e mesclá-la com a tabela padrão do BigQuery. Isso vai combinar os dados do data lake e do data warehouse. Depois, você vai consultar os dados combinados para conseguir os resultados de que a Meredith precisa.
- No console do Cloud, no Menu de navegação (), selecione BigQuery.
- No Editor de consultas, clique no ícone Escrever nova consulta (+). A guia Sem título será aberta.
Na consulta a seguir, observe o tipo de arquivo. Parquet é um formato muito usado para dados de string na análise de dados em nuvem e é normalmente usado para criar tabelas externas no BigQuery. Como arquivos Parquet são compactados, eles ocupam menos espaço de armazenamento. Eles também são fáceis de gerenciar, já que o esquema de dados é armazenado no próprio arquivo.
- Copie e cole o seguinte comando na guia Sem título:
CREATE OR REPLACE EXTERNAL TABLE `thelook_gcda.product_returns` OPTIONS ( format ="PARQUET", uris = ['gs://sureskills-lab-dev/DAC2M2L4/returns/returns_*.parquet'] );
Ao criar uma tabela externa no BigQuery, você gera uma tabela que aponta para os dados armazenados em um local externo, como o Cloud Storage. Os tipos de dados nas colunas da tabela externa serão inferidos de acordo com os dados no local externo.
- Clique em Executar.
Agora, verifique as propriedades da tabela que você acabou de criar.
-
No painel Explorador, expanda a lista de bancos de dados clicando na seta suspensa ao lado do ID do projeto.
-
Clique na seta suspensa ao lado do conjunto de dados thelook_gcda.
-
Selecione a tabela product_returns. Se ela ainda não estiver listada, atualize a página.
-
Clique na guia Detalhes e estude os detalhes na seção Configuração de dados externos.
-
Confira a coluna URIs de origem e observe que ela aponta para gs://. Na interface do BigQuery, a coluna "URIs de origem" mostra a localização da fonte de dados de uma tabela. O prefixo gs:// nessa coluna indica que os dados estão armazenados no Cloud Storage. Quando você cria uma tabela externa, os dados ficam armazenados na fonte no Cloud Storage, mas podem ser consultados como uma tabela padrão do BigQuery.
-
Copie a consulta a seguir no Editor de consultas:
Observação: sempre que você executa uma nova consulta no Editor de consultas, é possível substituir a consulta antiga copiando e colando a nova consulta sobre a anterior na mesma guia Sem título ou clicar no ícone Escrever nova consulta (+) para abrir uma nova guia Sem título e executar a consulta. SELECT COUNT(*) AS row_count FROM `thelook_gcda.product_returns`;
Essa consulta retorna uma contagem de linhas de 20.000.
- Clique em Executar.
Em seguida, confira as propriedades da tabela distribution_centers.
-
No painel Explorador, no conjunto de dados thelook_gcda, selecione a tabela distribution_centers.
-
Clique na guia Detalhes e estude os detalhes nas seções Informações da tabela e Informações do armazenamento. Essa não é uma tabela externa, já que nenhum arquivo externo é citado.
Agora, verifique os dados da tabela product_returns que você criou nas etapas anteriores.
-
Copie a consulta a seguir no Editor de consultas:
SELECT * FROM `thelook_gcda.product_returns` ORDER BY status_date desc LIMIT 10;
Essa consulta retorna as 10 devoluções de produtos mais recentes com base na data do status de devolução.
-
Clique em Executar.
-
Copie a consulta a seguir no Editor de consultas:
SELECT dc.name, pr.* FROM `thelook_gcda.product_returns` AS pr INNER JOIN `thelook_gcda.distribution_centers` AS dc ON dc.id = pr.distribution_center_id;
Essa consulta mescla os dados de um bucket do Cloud Storage (product_returns) com dados armazenados no BigQuery (uma tabela padrão, distribution_centers) e retorna o nome do centro de distribuição (distribution_centers.name) com todas as colunas dos dados de devolução no arquivo Parquet.
-
Clique em Executar.
-
Copie a consulta a seguir no Editor de consultas:
SELECT dc.name AS distribution_center, p.category, COUNT(*) AS product_return_count FROM `thelook_gcda.product_returns` AS pr INNER JOIN `thelook_gcda.distribution_centers` AS dc ON dc.id = pr.distribution_center_id INNER JOIN `thelook_gcda.products` p ON p.id = pr.product_id WHERE p.category = "Jeans" GROUP BY dc.name, p.category;
Essa consulta gera as informações que a Meredith solicitou. A consulta mostra o nome do centro de distribuição (distribution_centers.name) e o número e produtos devolvidos na categoria "Jeans" (product.category).
- Clique em Executar.
Clique em Verificar meu progresso para conferir se você concluiu a tarefa corretamente.
Tarefa 2: importe dados usando o console (do BigQuery Studio)
Uma lista de nomes de produtos e preços atualizados foi enviada por um fabricante importante. Meredith precisa atualizar os dados para refletir esses novos custos e garantir que os relatórios mostrem as informações mais atualizadas.
O fabricante enviou a lista no formato CSV e o suporte técnico a copiou para um bucket do Cloud Storage. O suporte também enviou uma captura de tela do arquivo para que você tenha uma ideia do que deve ser exibido:
O arquivo está localizado no bucket do Cloud Storage “sureskills-lab-dev” no arquivo price_update. Nesta tarefa, você vai importar os dados para o conjunto de dados thelook_gcda.
- Na barra do Explorador, clique em + ADICIONAR para adicionar uma fonte de dados ao projeto.
- Selecione Google Cloud Storage.
- Em Selecionar arquivo do bucket do GCS, digite sureskills-lab-dev/DAC2M2L4/price_update/price_update_shirts.csv
- Em Formato de arquivo, selecione CSV.
- Na seção Destino, em Conjunto de dados, selecione thelook_gcda.
- No campo Tabela, digitel shirt_price_update
- Verifique se o campo Tipo de tabela está definido como Tabela nativa. Isso indica que o BigQuery vai copiar o conteúdo do arquivo CSV do bucket do Cloud Storage para o próprio armazenamento.
- Em Esquema, selecione Detectar automaticamente. O BigQuery vai tentar inferir os tipos de dados verificando os valores de cada coluna.
- Clique em Criar tabela.
Clique em Verificar meu progresso para conferir se você concluiu a tarefa corretamente.
Conclusão
Bom trabalho!
Ao ajudar a Meredith a entender melhor as vendas e devoluções de produtos, assim como os custos atualizados dos produtos, você forneceu as informações de que ela precisava para gerar relatórios e entender melhor a linha de produtos da TheLook eCommerce.
Você também conseguiu experiência prática combinando dados armazenados em um data lake do Cloud Storage com os armazenados em um data warehouse do BigQuery. Isso ajudou você a saber mais sobre como integrar dados de diferentes fontes e armazená-los de forma otimizada para a análise. Você também aprendeu como essa arquitetura híbrida funciona.
Por fim, você importou dados de um arquivo CSV para uma tabela padrão do BigQuery. Isso ajudou você a entender as diferentes formas de trabalhar e armazenar dados de várias fontes no BigQuery.
Agora você sabe como usar um data lakehouse e combinar dados do Cloud Storage com o BigQuery.
Exemplos de diferenças entre Tabelas padrão e Tabelas externas:
Tabela padrão | Tabela externa | |
---|---|---|
Onde os dados estão | "Dentro" do BigQuery. | "Fora" do BigQuery, no Cloud Storage. |
Instrução CREATE TABLE (DDL): arquivos externos | Sem referência a arquivos externos. | Precisa mencionar arquivos externos. |
Instrução CREATE TABLE: formato do arquivo | Não tem referências a formatos de arquivo como CSV ou Parquet. | Precisa especificar o tipo de arquivo externo referenciado. |
Formato do armazenamento de dados | Um formato interno específico do BigQuery chamado Capacitor. | Vários arquivos suportados como CSV, Parquet, AVRO e Iceberg. |
Desempenho | Alto | Pode ser alto, dependendo de fatores que incluem tamanho dos dados, formato de arquivo e estrutura de particionamento. |
Instrução CREATE TABLE: exemplo | CREATE TABLE thelook_gcda.products (Product_id INT, Product_name STRING, Active BOOLEAN); | CREATE EXTERNAL TABLE thelook_gcda.product_returns OPTIONS (format="PARQUET", uris = ['gs://sureskills-lab-dev/DAC2M2L4/returns/returns_*.parquet']); |
Há mais diferenças técnicas, recursos e limitações entre esses dois tipos de tabela que não entram no escopo deste laboratório. Para mais informações, pesquise "Tipos de tabela do BigQuery" no Google ou confira a documentação "Introdução a tabelas".
Finalize o laboratório
Antes de encerrar o laboratório, certifique-se de que você concluiu todas as tarefas. Quando tudo estiver pronto, clique em Terminar o laboratório e depois em Enviar.
Depois que você finalizar um laboratório, não será mais possível acessar o ambiente do laboratório nem o trabalho que você concluiu nele.
Copyright 2024 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de empresas e produtos podem ser marcas registradas das empresas a que estão associados.