Orquestrar pipelines

Nesta página, explicamos a orquestração de pipeline com o Cloud Composer e acionadores. O Cloud Data Fusion recomenda o uso do Cloud Composer para orquestrar pipelines. Se você precisar de uma maneira mais simples de gerenciar a orquestração, use gatilhos.

Composer

Orquestre pipelines com o Cloud Composer

A orquestração da execução do pipeline no Cloud Data Fusion com o Cloud Composer oferece os seguintes benefícios:

  • Gerenciamento centralizado de fluxo de trabalho: gerencie de maneira uniforme a execução de vários pipelines do Cloud Data Fusion.
  • Gerenciamento de dependências: para garantir uma ordem de execução adequada, defina dependências entre os pipelines.
  • Monitoramento e alertas:o Cloud Composer fornece recursos de monitoramento e alertas de falhas.
  • Integração com outros serviços: o Cloud Composer permite orquestrar fluxos de trabalho que abrangem o Cloud Data Fusion e outros serviços do Google Cloud.

Para orquestrar pipelines do Cloud Data Fusion usando o Cloud Composer, siga este processo:

  1. Configure o ambiente do Cloud Composer.

    • Criar um ambiente do Cloud Composer. Se você não tiver um, provisione o ambiente no seu projeto do Google Cloud. Esse ambiente é seu espaço de trabalho de orquestração.
    • Conceda as permissões. Verifique se a conta de serviço do Cloud Composer tem as permissões necessárias para acessar o Cloud Data Fusion (como permissão para iniciar, interromper e listar pipelines).
  2. Definir gráficos acíclicos dirigidos (DAG) para orquestração

    • Crie um DAG: no Cloud Composer, crie um DAG que defina o fluxo de trabalho de orquestração para os pipelines do Cloud Data Fusion.
    • Operadores do Cloud Data Fusion: use os operadores do Cloud Data Fusion do Cloud Composer no DAG. Esses operadores permitem interagir de maneira programática com o Cloud Data Fusion.

Operadores do Cloud Data Fusion

A orquestração de pipelines do Cloud Data Fusion tem os seguintes operadores:

CloudDataFusionStartPipelineOperator

Aciona a execução de um pipeline do Cloud Data Fusion pelo ID. Ele tem os seguintes parâmetros:

  • ID do pipeline
  • Local (região do Google Cloud)
  • Namespace do pipeline
  • Argumentos do ambiente de execução (opcional)
  • Aguardar a conclusão (opcional)
  • Tempo limite (opcional)
CloudDataFusionStopPipelineOperator

Permite interromper um pipeline do Cloud Data Fusion em execução.

CloudDataFusionDeletePipelineOperator

Exclui um pipeline do Cloud Data Fusion.

Criar o fluxo de trabalho do DAG

Ao criar o fluxo de trabalho do DAG, considere o seguinte:

  • Como definir dependências: use a estrutura do DAG para definir dependências entre tarefas. Por exemplo, é possível ter uma tarefa que aguarda a conclusão bem-sucedida de um pipeline em um namespace antes de acionar outro pipeline em um namespace diferente.
  • Programação: programe o DAG para ser executado em intervalos específicos, como diariamente ou por hora, ou configure-o para ser acionado manualmente.

Para mais informações, consulte a visão geral do Cloud Composer.

Gatilhos

Orquestrar pipelines com gatilhos

Os gatilhos do Cloud Data Fusion permitem executar automaticamente um pipeline downstream após a conclusão (sucesso, falha ou qualquer condição especificada) de um ou mais pipelines upstream.

Os gatilhos são úteis para as seguintes tarefas:

  • Limpar os dados uma vez e disponibilizá-los a vários pipelines downstream para consumo.
  • Compartilhamento de informações, como argumentos de ambiente de execução e configurações de plug-in, entre pipelines. Essa tarefa é chamada de configuração do payload.
  • Ter um conjunto de pipelines dinâmicos executados usando os dados de hora, dia, semana ou mês, em vez de um pipeline estático que precisa ser atualizado a cada execução.

Por exemplo, você tem um conjunto de dados que contém todas as informações sobre os fretes da sua empresa. Com base nesses dados, responda a várias perguntas de negócios. Para isso, crie um pipeline que limpe os dados brutos sobre as remessas, chamado Shipments Data Cleaning (Limpeza de dados de remessas). Em seguida, você cria um segundo pipeline, Delayed Shipments USA, que lê os dados limpos e encontra as remessas nos EUA que atrasaram mais do que um limite especificado. O pipeline Delayed Shipments USA poderá ser acionado assim que o pipeline upstream Shipments Data Cleaning for concluído com sucesso.

Além disso, como o pipeline downstream consome a saída dele, é necessário especificar que, quando o pipeline downstream for executado usando esse gatilho, ele também receberá o diretório de entrada para leitura (que é o diretório em que o pipeline upstream gerou a saída). Esse processo é chamado de configuração do payload de transmissão, que você define com argumentos de ambiente de execução. Ele permite ter um conjunto de pipelines dinâmicos que são executados usando os dados de hora, dia, semana ou mês (não um pipeline estático, que precisa ser atualizado a cada execução).

Para orquestrar pipelines com gatilhos, siga este processo:

  1. Criar pipelines upstream e downstream.

    • No Cloud Data Fusion Studio, projete e implante os pipelines que formam a cadeia de orquestração.
    • Considere qual pipeline ativará o próximo pipeline (downstream) em seu fluxo de trabalho.
  2. Opcional: transmitir argumentos de ambiente de execução para pipelines upstream.

  3. Criar um gatilho de entrada no pipeline downstream.

    • No Studio do Cloud Data Fusion, acesse a página Lista. Na guia Implantado, clique no nome do pipeline downstream. A visualização "Implantar" desse pipeline é exibida.
    • No lado central esquerdo da página, clique em Acionadores de entrada. Uma lista de pipelines disponíveis é exibida.
    • Clique no pipeline upstream. Selecione um ou mais dos estados de conclusão do pipeline upstream (Êxito, Falha ou Paradas) como a condição para a execução do pipeline downstream.
    • Se você quiser que o pipeline upstream compartilhe informações (chamadas de configuração de payload) com o pipeline downstream, clique em Configuração de acionador e siga as etapas para transmitir a configuração de payload como argumentos de ambiente de execução. Caso contrário, clique em Ativar gatilho.
  4. Testar o gatilho.

    • Inicie uma execução do pipeline upstream.
    • Se o gatilho estiver configurado corretamente, o pipeline downstream será executado automaticamente após a conclusão dos pipelines upstream, com base na condição configurada.

Transmitir a configuração do payload como argumentos de ambiente de execução

A configuração do payload permite o compartilhamento de informações do pipeline upstream para o pipeline downstream. Essas informações podem ser, por exemplo, o diretório de saída, o formato de dados ou o dia em que o pipeline foi executado. Essas informações são então usadas pelo pipeline downstream para tomar decisões, como determinar o conjunto de dados correto para leitura.

Para transmitir informações do pipeline upstream para o pipeline downstream, defina os argumentos do ambiente de execução do pipeline downstream com os valores dos argumentos do ambiente de execução ou da configuração de qualquer plug-in no pipeline upstream.

Sempre que o pipeline downstream é acionado e executado, a configuração do payload é definida usando os argumentos do ambiente de execução da execução específica do pipeline upstream que acionou o pipeline downstream.

Para transmitir a configuração de payload como argumentos de ambiente de execução, siga estas etapas:

  1. Retomando de onde você parou em Como criar um gatilho de entrada, depois de clicar em Configuração do acionador, todos os argumentos do ambiente de execução definidos anteriormente para o pipeline upstream serão exibidos. Escolha os argumentos de ambiente de execução a serem transmitidos do pipeline upstream para o pipeline downstream quando esse gatilho for executado.
  2. Clique na guia Configuração do plug-in para ver uma lista do que será transmitido do pipeline upstream para o pipeline downstream quando ele for acionado.
  3. Clique em Configurar e ativar gatilho.