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 que o pipeline lê, crie um pipeline reutilizável.

Objetivos

  • Use o plug-in Cloud Storage Argument Setter para permitir que o pipeline leia diferentes em todas as execuções.
  • Use o plug-in Argument Setter do Cloud Storage para permitir que o pipeline realize 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. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

  6. Enable the Cloud Data Fusion, Cloud Storage, BigQuery, and Dataproc APIs.

    Enable the 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. No console do Google Cloud, é possível criar um projeto do console do Google Cloud e 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 usar atributos do Cloud Data Fusion.

  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 Argument Setter do Cloud Storage

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

  2. No menu Ações, clique em Argument Setter do GCS.

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 da saída clicando no ícone de lixeira na linha do campo de deslocamento.

  7. Clique em Validar e resolva os erros.

  8. Clique em para sair de Properties. caixa de diálogo.

Transformar os dados

  1. Na interface da Web do Cloud Data Fusion, acesse o pipeline de dados na página 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 resolva 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 o 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ó Wrangler para o nó do Cloud Storage que você acabou de adicionar.
  4. Acesse o nó de 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 resolva 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 o pipeline de dados na página do Studio.
  2. No menu suspenso Condições e ações, clique em Argument Setter do GCS.
  3. Na tela do Pipeline Studio, arraste uma seta do nó do setter de argumentos do Cloud Storage para nó de origem do Cloud Storage.
  4. Acesse o nó "Argument Setter" 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. Clique em Implantar.

  3. Para abrir os Argumentos do ambiente de execução e conferir os argumentos input.path e directives da macro (tempo de execução), 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 tempo 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. In the Google Cloud console, go to the Manage resources page.

    Go to Manage resources

  2. In the project list, select the project that you want to delete, and then click Delete.
  3. In the dialog, type the project ID, and then click Shut down to delete the project.

A seguir