Projetar e criar um pipeline reutilizável


Neste tutorial, mostramos como criar um pipeline reutilizável que lê dados do Cloud Storage, realiza verificações de qualidade de dados e grava no Cloud Storage.

Os pipelines reutilizáveis têm uma estrutura de pipeline regular, mas é possível alterar a configuração de cada nó de pipeline com base nas configurações fornecidas por um servidor HTTP. Por exemplo, um pipeline estático pode ler dados do Cloud Storage, aplicar transformações e gravar em uma tabela de saída do BigQuery. Se você quiser que a transformação e a tabela de saída do BigQuery sejam alteradas com base no arquivo do Cloud Storage lido pelo pipeline, crie um pipeline reutilizável.

Objetivos

  • Use o plug-in do conjunto de argumentos do Cloud Storage para permitir que o pipeline leia entradas diferentes em cada execução.
  • usar o plug-in do conjunto de argumentos do Cloud Storage para permitir que o pipeline faça diferentes verificações de qualidade em cada execução.
  • Grave os dados de saída de cada execução no Cloud Storage.

Custos

Neste documento, você usará os seguintes componentes faturáveis do Google Cloud:

  • Cloud Data Fusion
  • Cloud Storage

Para gerar uma estimativa de custo baseada na projeção de uso deste tutorial, use a calculadora de preços. Novos usuários do Google Cloud podem estar qualificados para uma avaliação gratuita.

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, Cloud Storage, BigQuery, and Dataproc.

    Ative as APIs

  7. Crie uma instância do Cloud Data Fusion.

Ao usar o Cloud Data Fusion, você usa o console do Google Cloud e a interface da Web separada do Cloud Data Fusion. Nele, é possível criar um projeto, além de criar e excluir instâncias do Cloud Data Fusion. Na interface da Web do Cloud Data Fusion, é possível usar as várias páginas, como o Pipeline Studio ou o Wrangler, para aproveitar os recursos dele.

  1. No console do Google Cloud, abra a página Instâncias.

    Abrir a página "Instâncias"

  2. Na coluna Ações da instância, clique no link Visualizar instância. A interface da Web do Cloud Data Fusion é aberta em uma nova guia do navegador.

Implantar o plug-in do conjunto de argumentos do Cloud Storage

  1. Na interface da Web do Cloud Data Fusion, acesse a página do Studio.

  2. No menu Actions, clique em GCS Argument Setter.

Ler do Cloud Storage

  1. Na interface da Web do Cloud Data Fusion, acesse a página do Studio.
  2. Clique em Origem e selecione "Cloud Storage". O nó de uma origem do Cloud Storage aparece no pipeline.
  3. No nó do Cloud Storage, clique em Propriedades.

  4. No campo Nome de referência, insira um nome.

  5. No campo Caminho, digite ${input.path}. Essa macro controla o caminho de entrada do Cloud Storage nas diferentes execuções do pipeline.

  6. No painel "Esquema de saída" à direita, remova o campo offset do esquema de saída clicando no ícone da lixeira na linha do campo de deslocamento.

  7. Clique em Validar e corrija os erros.

  8. Clique em para sair da caixa de diálogo Propriedades.

Transformar os dados

  1. Na interface da Web do Cloud Data Fusion, acesse seu pipeline de dados na página do Studio.
  2. No menu suspenso Transform , selecione Wrangler.
  3. Na tela do Pipeline Studio, arraste uma seta do nó do Cloud Storage para o nó do Wrangler.
  4. Acesse o nó do Wrangler no pipeline e clique em Propriedades.
  5. Em Nome do campo de entrada, digite body.
  6. No campo Receita, digite ${directives}. Essa macro controla a lógica de transformação nas diferentes execuções do pipeline.
  7. Clique em Validar e corrija os erros.
  8. Clique em para sair da caixa de diálogo Propriedades.

Gravar no Cloud Storage

  1. Na interface da Web do Cloud Data Fusion, acesse seu pipeline de dados na página do Studio.
  2. No menu suspenso Coletor , selecione Cloud Storage.
  3. Na tela do Pipeline Studio, arraste uma seta do nó do Wrangler para o nó do Cloud Storage que você acabou de adicionar.
  4. Acesse o nó do coletor do Cloud Storage no pipeline e clique em Propriedades.
  5. No campo Nome de referência, insira um nome.
  6. No campo Caminho, insira o caminho de um bucket do Cloud Storage no projeto, onde o pipeline possa gravar os arquivos de saída. Se você não tiver um bucket do Cloud Storage, crie um.
  7. Clique em Validar e corrija os erros.
  8. Clique em para sair da caixa de diálogo Propriedades.

Definir os argumentos da macro

  1. Na interface da Web do Cloud Data Fusion, acesse seu pipeline de dados na página do Studio.
  2. No menu suspenso Conditions and Actions, clique em GCS Argument Setter.
  3. Na tela do Pipeline Studio, arraste uma seta do nó do conjunto de argumentos do Cloud Storage para o nó de origem do Cloud Storage.
  4. Acesse o nó do conjunto de argumentos do Cloud Storage no pipeline e clique em Propriedades.
  5. No campo URL, digite o seguinte:

    gs://reusable-pipeline-tutorial/args.json
    

    O URL corresponde a um objeto de acesso público no Cloud Storage com o seguinte conteúdo:

    {
      "arguments" : [
        {
          "name": "input.path",
          "value": "gs://reusable-pipeline-tutorial/user-emails.txt"
        },
        {
          "name": "directives",
          "value": "send-to-error !dq:isEmail(body)"
        }
      ]
    }
    

    O primeiro dos dois argumentos é o valor de input.path. O caminho gs://reusable-pipeline-tutorial/user-emails.txt é um objeto de acesso público no Cloud Storage com os seguintes dados de teste:

    alice@example.com
    bob@example.com
    craig@invalid@example.com
    

    O segundo argumento é o valor de directives. O valor send-to-error !dq:isEmail(body) configura o Administrador para filtrar as linhas que não são um endereço de e-mail válido. Por exemplo, craig@invalid@example.com é filtrado.

  6. Clique em Validar para garantir que você não tem erros.

  7. Clique em para sair da caixa de diálogo Propriedades.

Implantar e executar o pipeline

  1. Na barra superior da página Pipeline Studio, clique em Nomear seu pipeline. Nomeie o pipeline e clique em Salvar.

  2. Selecione Implantar.

  3. Para abrir os Argumentos de tempo de execução e ver os argumentos input.path e directives da macro (tempo de execução) e directives, clique no menu suspenso ao lado de Executar.

    Deixe os campos de valor em branco para notificar o Cloud Data Fusion de que o nó do conjunto de argumentos do Cloud Storage no pipeline definirá os valores desses argumentos durante o ambiente de execução.

  4. Clique em Executar.

Limpar

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados no tutorial, exclua o projeto que os contém ou mantenha o projeto e exclua os recursos individuais.

Depois de concluir o tutorial, é possível limpar os recursos criados no Google Cloud para que eles não consumam sua cota e você não receba cobranças por eles no futuro. Nas seções a seguir, você aprenderá a excluir e desativar esses recursos.

Excluir a instância do Cloud Data Fusion

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

Exclua 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