Checkpoints
Run Cloud Dataprep jobs to BigQuery
/ 100
Como criar um pipeline de transformação de dados com o Cloud Dataprep
- GSP430
- Visão geral
- Configuração e requisitos
- Tarefa 1: abrir o Dataprep no console do Google Cloud
- Tarefa 2: criar um conjunto de dados do BigQuery
- Tarefa 3. conectar os dados do BigQuery ao Cloud Dataprep
- Tarefa 4: analisar os campos de dados de e-commerce com a interface
- Tarefa 5: organizar os dados
- Tarefa 6: aprimorar os dados
- Tarefa 7: executar jobs do Cloud Dataprep no BigQuery
- Parabéns!
Este laboratório foi desenvolvido com nossa parceira, a Alteryx. Suas informações pessoais podem ser compartilhadas com a Alteryx, patrocinadora do laboratório, caso você tenha escolhido receber atualizações de produtos, anúncios e ofertas no seu perfil de conta.
GSP430
Visão geral
O Dataprep by Trifacta é um serviço de dados inteligente para analisar visualmente, limpar e preparar dados estruturados e não estruturados para análise. Neste laboratório, você vai usar a interface do usuário (UI) do Dataprep para criar um pipeline de transformação de dados e enviar os resultados ao BigQuery.
Neste laboratório, vamos usar um conjunto de dados de e-commerce com milhões de registros de sessões do Google Analytics referentes à Google Merchandise Store carregados no BigQuery. Você vai conhecer melhor os campos e linhas disponíveis e preparar os dados para análise.
Atividades
Neste laboratório, você vai aprender a:
- Conectar conjuntos de dados do BigQuery ao Dataprep
- Analisar a qualidade dos conjuntos de dados com o Dataprep
- Criar um pipeline de transformação de dados com o Dataprep
- Executar jobs de transformação e enviar as saídas para o BigQuery
Configuração e requisitos
Recomendamos que você faça o laboratório Como trabalhar com o Google Cloud Dataprep antes deste.
Antes de clicar no botão Start Lab
Leia estas instruções. 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.
Este laboratório prático permite que você realize as atividades em um ambiente real de nuvem, 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. Se for preciso pagar, você verá um pop-up para 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 | "Nome de usuário"}}} Você também encontra o Nome de usuário no painel Detalhes do laboratório.
-
Clique em Seguinte.
-
Copie a Senha abaixo e cole na caixa de diálogo de boas-vindas.
{{{user_0.password | "Senha"}}} Você também encontra a Senha no painel Detalhes do laboratório.
-
Clique em Seguinte.
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.
Tarefa 1: abrir o Dataprep no console do Google Cloud
- Abra o Cloud Shell e execute o seguinte comando:
Uma mensagem vai aparecer informando que a identidade do serviço foi criada.
-
No console do Cloud, acesse o Menu de navegação e, em Analytics, selecione Dataprep.
-
Para entrar no Dataprep, concorde com os Termos de Serviço e clique em Aceitar.
-
Quando for solicitado que você compartilhe as informações da sua conta com a Alteryx, marque a caixa de seleção e clique em Concordar e continuar.
-
Clique em Permitir para autorizar a Alteryx a acessar o projeto.
-
Selecione suas credenciais do Qwiklabs para fazer login e clique em Permitir.
-
Marque a caixa de seleção e clique em Aceitar para concordar com os Termos de Serviço da Alteryx.
-
Se for solicitado o uso do local padrão para o bucket de armazenamento, clique em Continuar.
Tarefa 2: criar um conjunto de dados do BigQuery
Embora o foco deste laboratório seja o Cloud Dataprep, vamos usar o BigQuery como endpoint para fazer a ingestão de conjuntos de dados para o pipeline e como destino da saída após a conclusão do pipeline.
-
No console do Google Cloud, acesse Menu de navegação > BigQuery.
-
Você verá a caixa de mensagem Olá! Este é o BigQuery no Console do Cloud. Ela tem um link para o guia de início rápido e lista as atualizações da interface.
-
Clique em Concluído.
-
No painel Explorer, selecione o nome do seu projeto:
- No painel esquerdo, na seção Explorer, clique no ícone Ver ações () à direita do ID do projeto e selecione Criar conjunto de dados.
- Em ID do conjunto de dados, insira
ecommerce
. - Mantenha os outros valores padrão.
-
Clique em CRIAR CONJUNTO DE DADOS. Agora o conjunto de dados será exibido no projeto no painel esquerdo.
-
Copie e cole a consulta SQL abaixo no editor de consultas:
-
Clique em EXECUTAR. A consulta copia parte do conjunto de dados brutos públicos de e-commerce (equivalente a um dia inteiro de sessões ou cerca de 56 mil registros) para uma nova tabela chamada
all_sessions_raw_dataprep
, que foi adicionada ao seu conjunto de dados de e-commerce para você poder analisar e organizar os dados no Cloud Dataprep. -
Confirme se a nova tabela está no seu conjunto de dados de
e-commerce
:
Tarefa 3. conectar os dados do BigQuery ao Cloud Dataprep
Nesta tarefa, você conectará o Cloud Dataprep à sua origem de dados do BigQuery. Na página do Cloud Dataprep, faça o seguinte:
-
Clique em Create a flow no canto direito.
-
Renomeie Untitled Flow e especifique estes detalhes:
- Em Flow Name, digite
Ecommerce Analytics Pipeline
. - Em Flow Description, digite
Revenue reporting table
.
-
Clique em OK.
-
Se a mensagem
What's a flow?
aparecer, selecione Don't show me any helpers. -
Clique em Add Icon na caixa "Dataset".
-
Na caixa de diálogo Add Datasets to Flow, selecione Import Datasets.
-
No painel esquerdo, clique em BigQuery.
-
Quando seu conjunto de dados de e-commerce for carregado, clique nele.
-
Clique no ícone Create dataset (+) à esquerda da tabela
all_sessions_raw_dataprep
. -
Clique em Import & Add to Flow no canto inferior direito.
A origem de dados será atualizada automaticamente. Está tudo pronto para a próxima tarefa.
Tarefa 4: analisar os campos de dados de e-commerce com a interface
Nesta tarefa, você vai carregar e analisar parte do conjunto de dados no Cloud Dataprep.
- Clique no ícone Roteiro e selecione Editar roteiro.
O Cloud Dataprep carrega uma amostra do seu conjunto de dados na visualização do Transformer. Esse processo pode levar alguns segundos. Agora você pode começar a analisar os dados.
Responda às seguintes perguntas:
- Quantas colunas o conjunto de dados tem?
Resposta: 32 colunas.
- Quantas linhas a amostra tem?
Resposta: aproximadamente 12 mil linhas.
- Qual é o valor mais comum na coluna
channelGrouping
?
channelGrouping
.
Resposta: Referral. Geralmente, um site de referência é qualquer outro site que tenha um link para seu conteúdo. Por exemplo, se outro site tiver uma avaliação de um produto do site de e-commerce e incluir um link para ele. Nesse caso, o canal de aquisição é diferente daquele indicado com os visitantes que vêm de um mecanismo de pesquisa.
- Quais são os três países de onde se originam o maior número de sessões?
Resposta: Estados Unidos, Índia e Reino Unido.
- O que significa a barra cinza em totalTransactionRevenue?
Resposta: faltam valores no campo totalTransactionRevenue
. Isso significa que muitas sessões na amostra não geraram receita. Mais tarde, vamos filtrar esses valores para que a tabela final tenha apenas transações de clientes com receita associada.
- Qual é o valor máximo de
timeOnSite
em segundos, o máximo depageviews
e o máximo desessionQualityDim
na amostra de dados? Dica: abra o menu à direita da colunatimeOnSite
clicando em e selecione Column Details.
Para fechar a janela de detalhes, clique no botão Close Column Details (X) no canto superior direito. Repita o processo para visualizar os detalhes das colunas pageviews
e sessionQualityDim
.
Respostas:
- Tempo máximo no site: 5.561 segundos (ou 92 minutos)
- Máximo de visualizações de página: 155 páginas
- Dimensão máxima de qualidade da sessão: 97
timeOnSite
e outros campos sejam contados somente uma vez por sessão. A unicidade de visitantes e dados de sessão será abordada com mais detalhes em um próximo laboratório.
- Com base no histograma de
sessionQualityDim
, é possível dizer que os valores dos dados estão distribuídos de maneira uniforme?
Resposta: não, a maioria tem valores muito baixos (sessões com qualidade ruim), o que é esperado.
- Qual é o período do conjunto de dados? Dica: veja o campo date.
Resposta: 01/08/2017 (dados de um dia).
- Talvez você veja uma barra vermelha na coluna
productSKU
. O que isso significa?
Resposta: uma barra vermelha indica valores incompatíveis. Durante a amostragem de dados, o Cloud Dataprep tenta identificar automaticamente o tipo de cada coluna. Se você não vir uma barra vermelha na coluna productSKU
, isso significa que o Cloud Dataprep identificou corretamente o tipo da coluna (ou seja, o tipo "string"). Caso você veja uma barra vermelha, isso indica que o Cloud Dataprep encontrou valores numéricos suficientes na amostragem para determinar (incorretamente) que o tipo deve ser "inteiro". O Cloud Dataprep também detectou alguns valores não inteiros. Por isso, ele sinalizou esses valores como incompatíveis. Na verdade, productSKU
nem sempre é um número inteiro. Por exemplo, "GGOEGOCD078399" também seria um valor correto. Nesse caso, o Cloud Dataprep identificou incorretamente o tipo de coluna, que deve ser uma string e não um número inteiro. Você vai corrigir isso mais adiante neste laboratório.
- Na coluna
v2ProductName
, quais são os produtos mais em alta?
Resposta: produtos Nest
- Na coluna
v2ProductCategory
, quais são as categorias de produtos mais procuradas?
Respostas:
As categorias mais procuradas são:
-
Nest;
-
Bags;
-
(not set), que significa que algumas sessões não estão associadas a uma categoria.
-
Verdadeiro ou falso? O valor mais comum de
productVariant
éCOLOR
.
Resposta: falso. O mais comum é (not set), porque mais de 80% dos produtos não são oferecidos em outras cores.
- Quais são os dois valores na coluna type?
Resposta: PAGE
e EVENT
.
Um usuário pode ter muitos tipos de interação diferentes ao navegar no site. Esses tipos incluem a gravação de dados da sessão ao visualizar uma página (PAGE) ou um evento (EVENT) específico (como clicar em um produto) e outros. Vários tipos de hits podem ser acionados ao mesmo tempo. Por isso, geralmente é necessário filtrar o tipo para evitar a contagem duplicada. Veremos isso em detalhes mais tarde, em um laboratório sobre análise.
- Qual é o valor máximo de
productQuantity
?
Resposta: 100, mas talvez você veja outro valor.
productQuantity
indica quantas unidades desse produto foram adicionadas ao carrinho. 100 significa que cem unidades de um único produto foram adicionadas.
- Qual é o valor que mais aparece em
currencyCode
para as transações?
Resposta: USD (dólares americanos)
- Existem valores válidos para
itemQuantity
ouitemRevenue
?
Resposta: não, todos os valores são NULL
ou estão ausentes.
- Que porcentagem dos valores de
transactionId
é válida? O que isso representa para o conjunto de dados dee-commerce
?
- Resposta: aproximadamente 4,6% dos IDs de transações têm um valor válido, o que representa a taxa de conversão média do site (4,6% dos visitantes fazem transações).
- Quantos valores a coluna
eCommerceAction_type
tem, e qual é o mais comum?
Respostas: sete valores foram encontrados na amostra. O mais comum é 0
(zero), usado para indicar que o tipo é desconhecido. Isso faz sentido porque os usuários nem sempre realizam ações de e-commerce nas sessões da Web no site, eles estão apenas navegando na maioria das vezes.
- Quando você usa o esquema, o que
eCommerceAction_type = 6
significa?
eCommerceAction
e leia a descrição do mapeamento
Resposta: seis ações associadas a "Completed purchase". Mais adiante neste laboratório, vamos incluir esse mapeamento no pipeline de dados.
Tarefa 5: organizar os dados
Nesta tarefa, você fará a limpeza dos dados excluindo colunas não usadas, eliminando duplicações, criando campos calculados e filtrando linhas indesejadas.
Converta o tipo dos dados na coluna productSKU
- Para definir o tipo dos dados na coluna productSKU como "string", abra o menu à direita da coluna productSKU clicando em e selecione Change type > String.
- Verifique se a primeira etapa do pipeline de transformação de dados foi criada clicando no ícone Recipe:
Exclua as colunas não usadas
Como mencionado anteriormente, as colunas itemQuantity e itemRevenue serão excluídas, porque têm somente valores NULL e não são úteis para este laboratório.
- Abra o menu da coluna itemQuantity e clique em Delete.
- Repita o processo para excluir a coluna itemRevenue.
Elimine as linhas duplicadas
Sua equipe informou que o conjunto de dados de origem pode ter valores de sessão duplicados. Eles serão removidos em uma nova etapa para eliminar duplicações.
- Clique no ícone Filter rows na barra de ferramentas. Em seguida, clique em Remove duplicate rows.
-
Clique em Add no painel à direita.
-
Revise o roteiro que você criou. Ele será semelhante a este:
Filtre as sessões sem receita
Sua equipe pediu para você criar uma tabela com todas as sessões de usuários que compraram pelo menos um item no site. Filtre as sessões de usuários com receita NULL.
- Na coluna totalTransactionRevenue, clique na barra cinza Missing values. Todas as linhas sem um valor em totalTransactionRevenue serão destacadas em vermelho.
- No painel Suggestions, encontre Delete rows e clique em Add.
Essa etapa filtra o conjunto de dados para incluir somente transações com receita, que têm valores em totalTransactionRevenue diferentes de NULL.
Filtre as sessões por visualizações de página
O conjunto de dados tem sessões de vários tipos. Por exemplo, PAGE para visualizações de página e EVENT para eventos acionados, que incluem categorias de produtos visualizadas ou itens adicionados ao carrinho. Para evitar a contagem duplicada de visualizações de página da sessão, adicione um filtro e inclua somente os hits relacionados à visualização da página.
-
No histograma abaixo da coluna type, clique na barra de PAGE. Todas as linhas com o tipo PAGE serão destacadas em verde.
-
No painel Suggestions, encontre Keep rows e clique em Add.
Tarefa 6: aprimorar os dados
Procure visitId na documentação do esquema e leia a descrição para saber se ele é único para as sessões ou apenas para o usuário.
-
visitId
: é o identificador da sessão. Ele faz parte do valor geralmente armazenado como o cookieutmb
. Esse valor só é único para o usuário. Para gerar um ID totalmente exclusivo, use uma combinação de fullVisitorId e visitId.
Como podemos ver, visitId
não é único entre os usuários. Precisamos criar um identificador exclusivo.
Crie uma nova coluna para um ID de sessão único
Como você viu, o conjunto de dados não tem uma coluna para a sessão de visitante único. Crie um ID exclusivo para cada sessão, concatenando os campos fullVisitorId e visitId.
- Clique no ícone Merge columns na barra de ferramentas.
-
Em Columns, selecione
fullVisitorId
evisitId
. -
Para Separator, digite apenas um hífen:
-
. -
Em New column name, digite
unique_session_id
.
- Clique em Add.
unique_session_id
será uma combinação entre fullVisitorId
e visitId
. Veremos em um laboratório futuro se cada linha nesse conjunto de dados está no nível de sessão única (uma linha por sessão de usuário) ou tem uma configuração mais granular.
Crie uma declaração de caso para o tipo de ação de e-commerce
Como vimos anteriormente, os valores na coluna eCommerceAction_type
são números inteiros que representam ações reais de e-commerce executadas na sessão. Por exemplo: 3 = "Adicionar ao carrinho" ou 5 = "Finalizar compra". Esse mapeamento não ficará visível imediatamente para os usuários finais. Por isso, vamos criar um campo calculado que mostra o nome do valor.
- Clique em Conditions na barra de ferramentas e depois em Case on single column.
-
Em Column to evaluate, especifique
eCommerceAction_type
. -
Ao lado de Cases (1), clique em Add oito vezes para ter um total de nove casos.
- Em cada Case, especifique os seguintes valores de mapeamento, incluindo as aspas simples:
Comparação |
Novo valor |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-
Em New column name, digite
eCommerceAction_label
. Não altere os valores dos outros campos. -
Clique em Add.
Ajuste os valores na coluna totalTransactionRevenue
Como mencionado no esquema, a coluna totalTransactionRevenue tem valores que são transferidos para o Analytics multiplicados por 10^6 (por exemplo, 2,40 é enviado como 2.400.000). Divida o conteúdo dessa coluna por 10^6 para chegar aos valores originais.
- Clique em para abrir o menu à direita da coluna totalTransactionRevenue e selecione Calculate > Custom formula.
- Digite
DIVIDE(totalTransactionRevenue,1000000)
em Formula etotalTransactionRevenue1
em New column name. Esta é a visualização da transformação:
- Clique em Add.
totalTransactionRevenue1
. Abra o menu à direita da coluna totalTransactionRevenue1
clicando em e clique em Change type > Decimal.- Analise a lista completa de etapas no seu roteiro:
- Agora clique em Run.
Tarefa 7: executar jobs do Cloud Dataprep no BigQuery
-
Na página Executar job, selecione Dataflow + BigQuery para o seu Ambiente em execução.
-
Em Ações de publicação, clique em Editar à direita de Create-CSV.
-
Na próxima página, selecione BigQuery no menu à esquerda.
-
Selecione o conjunto de dados de e-commerce.
-
No painel à direita, clique em Criar uma nova tabela.
-
Nomeie sua tabela como revenue_reporting.
-
Escolha Descartar a tabela a cada execução.
-
Clique em Atualizar.
-
Clique em EXECUTAR.
Depois que o job do Cloud Dataprep for concluído, atualize a página do BigQuery e verifique se a tabela de resposta revenue_reporting está presente.
Clique em Verificar meu progresso para conferir o objetivo.
Parabéns!
Você usou seu conjunto de dados de e-commerce e criou um pipeline de transformação de dados com o Cloud Dataprep.
Próximas etapas / Saiba mais
- Descubra Alteryx no Google Cloud Marketplace.
- Você tem uma conta do Google Analytics e quer consultar seus próprios conjuntos de dados no BigQuery? Siga este guia de exportação.
- Confira estes laboratórios:
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 11 de fevereiro de 2024
Laboratório testado em 20 de setembro de 2023
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 produtos e empresas podem ser marcas registradas das respectivas empresas a que estão associados.