Criar um pipeline de campanha de destino

Saiba como usar o Cloud Data Fusion para limpar, transformar e processar dados de clientes e selecionar candidatos para uma campanha segmentada.


Para seguir as instruções detalhadas desta tarefa diretamente no console do Google Cloud, clique em Orientação:

Orientações


Cenário

Você quer criar materiais de marketing personalizados para uma promoção de campanha em andamento e distribuí-los diretamente para as caixas de correio dos seus clientes.

Sua campanha tem duas restrições:

  • Local: você só faz entregas para clientes na Califórnia, em Washington e no Oregon.
  • Custo: para economizar combustível, você entrega em casas de cliente com acesso rápido. Você entrega somente para clientes que moram em avenidas.

Neste tutorial, mostramos como gerar a lista de endereços de clientes para a campanha. Neste tutorial, você faz as ações a seguir:

  1. Limpar os dados do cliente: filtre os clientes que moram em uma via na Califórnia, em Washington ou no Oregon.
  2. Crie um pipeline que faça o seguinte:

    • Une os dados filtrados do cliente a um conjunto de dados público com abreviações de estado.
    • Armazena os dados limpos e mesclados em uma tabela do BigQuery que você pode consultar (usando a interface da Web do BigQuery) ou analisar (usando o Looker Studio).

Objetivos

  • Conectar o Cloud Data Fusion a duas fontes de dados
  • Aplicar transformações básicas.
  • Mesclar as duas fontes de dados.
  • Gravar os dados de saída em um coletor

Antes de começar

  1. Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
  2. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  3. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  4. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  5. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  6. Ative as APIs Cloud Data Fusion, BigQuery, Cloud Storage, and Dataproc.

    Ative as APIs

  7. Crie uma instância do Cloud Data Fusion.
    Neste tutorial, presumimos que você usa a conta de serviço padrão do Compute Engine.

Gerenciar permissões

Crie e atribua as permissões e os papéis personalizados necessários.

Criar um papel personalizado e adicionar permissões

  1. No console do Google Cloud, acesse a página Papéis:

    Acessar a página "Papéis"

  2. Clique em Criar função.

  3. No campo Título, insira Custom Role-Tutorial.

  4. Clique em Adicionar permissões.

  5. Na janela Adicionar permissões, selecione as seguintes permissões e clique em Adicionar:

    • bigquery.datasets.create
    • bigquery.jobs.create
    • storage.buckets.create
  6. Clique em Criar.

Atribuir um papel personalizado à conta de serviço padrão do Compute Engine

  1. Acesse a página Instâncias do Cloud Data Fusion:

    Criar uma instância

  2. Clique no nome da sua instância.

  3. Anote a conta de serviço do Dataproc padrão. A página de detalhes da instância contém essas informações.

    Veja a seguir o formato do nome da conta de serviço do Dataproc:

    CUSTOMER_PROJECT_NUMBER-compute@developer.gserviceaccount.com.

    Saiba mais sobre as contas de serviço do Dataproc.

  4. Acesse a página do IAM:

    Acessar a página "Papéis"

  5. Na barra Filtro, digite o nome da sua conta de serviço padrão do Dataproc.

  6. Para a conta de serviço padrão do Compute Engine, clique em Editar .

  7. Clique em Adicionar outro papel.

  8. No campo Selecionar um papel, escolha Tutorial de papéis personalizados.

  9. Clique em Save.

  10. Verifique se a conta de serviço já recebeu o papel de Executor do Cloud Data Fusion.

Preparar os dados do cliente

Este tutorial requer os dois conjuntos de dados de entrada a seguir, ambos fornecidos com a instância do Cloud Data Fusion:

  • Dados do cliente de amostra: um arquivo CSV chamado customers.csv.
  • Abreviações de estado: uma tabela do BigQuery chamada state_abbreviations.

Carregar os dados do cliente

  1. Acesse a página Instâncias do Cloud Data Fusion:

    Acesse "Instâncias"

  2. Na instância do Cloud Data Fusion que você está usando, clique em Ver instância. A interface da Web do Cloud Data Fusion é aberta em uma nova guia.

  3. Clique em Wrangler. A página do Wrangler é aberta.

  4. No painel Conexões, GCS > Exemplos de buckets.

  5. Clique em campaign-tutorial.

  6. Clique em customers.csv.

  7. Na janela Parsing options, especifique o seguinte:

    • Formato: csv
    • Ativar valor citado: False
    • Usar a primeira linha como cabeçalho: False
    • Codificação de arquivos: UTF-8
  8. Clique em Confirm. Os dados do cliente são carregados em uma nova guia no Wrangler.

    Dados do cliente carregados

Limpe os dados do cliente

Ela contém duas subtarefas:

  • Como definir o esquema
  • Filtrar os dados do cliente para apresentar apenas o público-alvo necessário

Definir o esquema

Defina o esquema dos dados atribuindo nomes apropriados às colunas da tabela. Para dar às colunas, como body_1 e body_2, nomes mais informativos, siga estas etapas:

  1. No painel à direita, clique na guia Colunas.
  2. Clique no menu suspenso Nomes das colunas e selecione Definir tudo.
  3. Na caixa de diálogo Definir nomes de colunas em massa, insira os seguintes nomes de colunas separados por vírgulas:

    Name,StreetAddress,City,State,Country
    
  4. Clique em Aplicar.

Filtrar os dados

Filtre os dados para exibir somente os clientes que moram na Califórnia, no estado de Washington ou em Washington.

Remova todas as linhas que contenham valores diferentes destes estados:

  1. Clique na lista suspensa da coluna Estado e selecione Filtrar.
  2. Na janela de filtro, faça o seguinte:

    1. Clique em Manter linhas.
    2. Clique no menu suspenso Se e selecione o valor corresponde ao regex.
    3. Digite a seguinte expressão regular:

      ^(California|Oregon|Washington)$
      
    4. Clique em Aplicar.

    Os valores na coluna Estado são Califórnia, Oregon ou Washington.

Filtre os dados para exibir somente clientes que moram em avenidas. Mantenha apenas os endereços que contêm a string avenue:

  1. Clique no menu suspenso da coluna StreetAddress e selecione Filtrar.
  2. Na janela de filtro, faça o seguinte:

    1. Clique em Manter linhas.
    2. Clique no menu suspenso Se, selecione o valor contém e insira Avenue.
    3. Selecione Ignorar diferença entre maiúsculas e minúsculas.
    4. Clique em Aplicar.

      Filtrar os dados

Antes de executar jobs de processamento paralelo em todo o conjunto de dados, o Wrangler exibe apenas os primeiros 1.000 valores do conjunto de dados. Como você filtrou alguns dados, apenas alguns clientes permanecem na tela do Wrangler.

Criar um pipeline em lote

Você limpou os dados e executou transformações em um subconjunto de dados. Agora é possível criar um pipeline em lote para executar transformações em todo o conjunto de dados.

O Cloud Data Fusion traduz o pipeline criado no Studio em um programa Apache Spark que executa transformações em paralelo em um cluster temporário do Dataproc. Esse processo permite executar transformações complexas em grandes quantidades de dados de maneira escalonável e confiável, sem precisar lidar com a infraestrutura.

  1. Na página do Wrangler, clique em Criar um pipeline.
  2. Selecione Pipeline em lote. A página do Studio é aberta.
  3. No canto superior esquerdo, verifique se Pipeline de dados - Lote é exibido como o tipo de pipeline.

    Tipo de pipeline

    Na página do Studio, um nó de origem do GCSFile é conectado a um nó do Wrangler.

    Nó GCSFile conectado ao nó do Wrangler

    As transformações que você aplicou na página do Wrangler aparecem no nó do Wrangler na página do Studio.

  4. Para visualizar as transformações que você aplicou, mantenha o ponteiro do mouse sobre o nó do Wrangler e clique em Propriedades.

    As transformações que você aplicou aparecem nas Diretivas.

    Ver transformações aplicadas

  5. Clique em Validate (Validar).

  6. Clique em Fechar.

Para aplicar mais transformações, clique em Wrangle, que leva você de volta à página do Wrangler. A transformação que você adicionou aparecerá na página do Studio.

Por exemplo, você perceberá que a coluna País não é necessária, porque o valor é sempre "EUA". Para excluir a coluna, siga estas etapas:

  1. Clique em Wrangle.
  2. Clique na seta para baixo ao lado de País e selecione Excluir coluna.
  3. Clique em Aplicar. A página do Wrangler é fechada, e a janela de propriedades do Wrangler é aberta na página do Studio. Em Diretivas, aparece o drop Country.
  4. Clique em Fechar.

Abrevie os nomes dos estados

O sistema de navegação do veículo de entrega só reconhece endereços que contêm nomes de estados abreviados (CA, não Califórnia), e os dados de clientes contêm nomes completos de estados.

A tabela pública state_abbreviations do BigQuery tem duas colunas: uma com os nomes de estado completos e outra com os nomes de estado abreviados. Use esta tabela para atualizar os nomes dos estados nos dados do cliente.

Veja os dados de nomes de estado no BigQuery

  1. Em uma guia separada, acesse a página do BigQuery Studio:

    Acessar o BigQuery

  2. Clique em Criar consulta SQL e insira a seguinte consulta no editor de consultas:

    SELECT * FROM `dis-user-guide.campaign_tutorial.state_abbreviations`
    
  3. Clique em Run.

    Isso exibe os nomes dos estados e as abreviações.

    Nomes de estados e as abreviações

Acesse a tabela do BigQuery

Adicione uma origem ao pipeline que acesse a tabela state_abbreviations do BigQuery.

  1. Acesse a página do Cloud Data Fusion Studio e expanda o menu Origem.
  2. Clique em BigQuery.

    Um nó de origem do BigQuery aparece na tela com os outros dois nós.

  3. Mantenha o ponteiro do mouse sobre o nó de origem do BigQuery e clique em Propriedades.

    1. No campo ID do projeto do conjunto de dados, digite dis-user-guide.
    2. No campo Nome de referência, insira state_abbreviations.
    3. No campo Conjunto de dados, insira campaign_tutorial.
    4. No campo Table, insira state_abbreviations.
  4. Preencha o esquema da tabela do BigQuery clicando em Ver esquema.

  5. Clique em Fechar.

Mescle as duas fontes de dados

Para gerar uma saída que contenha dados do cliente com nomes de estados abreviados, mescle as duas fontes de dados, os dados do cliente e as abreviações de estado.

  1. Acesse a página do Cloud Data Fusion Studio e expanda o menu Análise.
  2. Clique em Joiner.

    Um nó de Combinador, representando uma ação semelhante a uma mesclagem de SQL, aparece na tela.

  3. Conecte o nó do Wrangler e o nó do BigQuery ao nó do Combinador: arraste uma seta de conexão na borda direita do nó de origem e solte no nó de destino.

    Conectar os nós do Wrangler e do BigQuery ao nó do Combinador

  4. Mantenha o ponteiro do mouse sobre o nó do Combinador e clique em Propriedades.

    1. Na seção Campos, expanda o Wrangler e o BigQuery.

      1. Desmarque a caixa de seleção state do Wrangler.
      2. Desmarque a caixa de seleção name do BigQuery porque você quer apenas o nome abreviado do estado e não o nome completo do estado.
      3. Mantenha a caixa de seleção abreviação do BigQuery marcada e altere o alias para State.

        Propriedades do nó do combinador

    2. No campo Tipo de mesclagem, deixe o valor como Externo. Em Entradas obrigatórias, marque a caixa de seleção Wrangler.

    3. Na seção Condição de mesclagem do Wrangler, selecione Estado. Para BigQuery, selecione Name.

    4. Gere o esquema da combinação resultante. Clique em Ver esquema.

    5. Clique em Validate (Validar).

    6. Clique em Fechar.

Armazene a saída no BigQuery

Armazene o resultado do pipeline em uma tabela do BigQuery. O local onde os dados serão armazenados é chamado de coletor.

  1. Acesse a página do Cloud Data Fusion Studio e expanda o Coletor.
  2. Clique em BigQuery.
  3. Conecte o nó do Joiner ao nó do BigQuery.

    Conectar o nó do Joiner e o nó do BigQuery

  4. Mantenha o ponteiro do mouse sobre o nó do BigQuery e clique em Propriedades.

    1. No campo Conjunto de dados, insira dis_user_guide.
    2. No campo Tabela, selecione customer_data_abbreviated_states.
    3. Clique em Fechar.

Implantar e executar o pipeline

  1. Na página do Studio, clique em Nomear o pipeline e insira CampaignPipeline.

    Implantar e executar o pipeline

  2. Clique em OK.

  3. No canto superior direito, clique em Deploy.

  4. Após a conclusão da implantação, clique em Executar.

A execução do pipeline pode levar alguns minutos. Enquanto espera, é possível observar o Status da transição do pipeline em Provisionamento > Iniciando > Em execução > Desprovisionamento > Concluído.

Ver os resultados

  1. No Console do Google Cloud, acesse a página do BigQuery:

    Ir para o BigQuery

  2. Clique em Criar consulta SQL.

  3. Consulte a tabela customer_data_abbreviated_states:

    SELECT * FROM dis_user_guide.customer_data_abbreviated_states LIMIT 1000
    

    Ver os resultados

Você criou um pipeline de dados.

Limpar

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta página, siga estas etapas.

Excluir o conjunto de dados do BigQuery

Para excluir o conjunto de dados do BigQuery criado neste tutorial, faça o seguinte:

  1. No console do Google Cloud, acesse a página do BigQuery.

    Ir para o BigQuery

  2. Selecione o conjunto de dados dis_user_guide.
  3. Clique em Excluir conjunto de dados.

Excluir a instância do Cloud Data Fusion

Siga estas instruções para excluir a instância do Cloud Data Fusion.

Excluir o projeto

O jeito mais fácil de evitar cobranças é excluindo o projeto que você criou para o tutorial.

Para excluir o projeto:

  1. No Console do Google Cloud, acesse a página Gerenciar recursos.

    Acessar "Gerenciar recursos"

  2. Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir .
  3. Na caixa de diálogo, digite o ID do projeto e clique em Encerrar para excluí-lo.

A seguir