Nesta página, explicamos a orquestração de pipelines com o Cloud Composer e os gatilhos. O Cloud Data Fusion recomenda usar o Cloud Composer para orquestrar pipelines. Se você precisar de uma maneira mais simples de gerenciar a orquestração, use gatilhos.
Composer
Orquestrar 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 fluxos de trabalho:gerencie de maneira uniforme a execução de vários pipelines do Cloud Data Fusion.
- Gerenciamento de dependências:para garantir a ordem de execução adequada, defina dependências entre pipelines.
- Monitoramento e alertas:o Cloud Composer oferece recursos de monitoramento e alertas para falhas.
- Integração com outros serviços:o Cloud Composer permite orquestrar fluxos de trabalho que abrangem o Cloud Data Fusion e outros Google Cloud serviços.
Para orquestrar pipelines do Cloud Data Fusion usando o Cloud Composer, siga este processo:
Configure o ambiente do Cloud Composer.
- Crie um ambiente do Cloud Composer. Se você não tiver um, provisione o ambiente no projeto Google Cloud . Esse ambiente é seu espaço de trabalho de orquestração.
- Conceda 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.
Defina gráficos acíclicos dirigidos (DAGs) para orquestração.
- Criar um DAG:no Cloud Composer, crie um DAG que define o fluxo de trabalho de orquestração dos pipelines do Cloud Data Fusion.
- Operadores do Cloud Data Fusion:use os operadores do Cloud Data Fusion do Cloud Composer no seu DAG. Esses operadores permitem interagir de maneira programática com o Cloud Data Fusion.
Operadores do Cloud Data Fusion
A orquestração de pipeline 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 (Google Cloud região)
- Namespace do pipeline
- Argumentos de 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:
- Definição de dependências:use a estrutura DAG para definir dependências entre tarefas. Por exemplo, você pode ter uma tarefa que aguarda a conclusão de um pipeline em um namespace antes de acionar outro em um namespace diferente.
- Programação:programe a DAG para ser executada em intervalos específicos, como diariamente ou a cada hora, ou configure para que ela seja acionada manualmente.
Para mais informações, consulte a Visão geral do Cloud Composer.
Gatilhos
Orquestrar pipelines com acionadores
Os acionadores 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 para vários pipelines downstream para consumo.
- Compartilhar informações, como argumentos de ambiente de execução e configurações de plug-in, entre pipelines. Essa tarefa é chamada de configuração de payload.
- Ter um conjunto de pipelines dinâmicos que são executados usando os dados de hora, dia, semana ou mês, em vez de um pipeline estático que precisa ser atualizado para cada execução.
Por exemplo, você tem um conjunto de dados que contém todas as informações sobre os envios da sua empresa. Com base nesses dados, você quer responder a várias perguntas de negócios. Para fazer isso, crie um pipeline que limpe os dados brutos sobre remessas, chamado Limpeza de dados de remessas. Em seguida, crie um segundo pipeline, Fretes atrasados nos EUA, que lê os dados limpos e encontra os fretes nos EUA que atrasaram mais do que um limite especificado. O pipeline Fretes atrasados nos EUA pode ser acionado assim que o pipeline Limpeza de dados de fretes upstream for concluído.
Além disso, como o pipeline downstream consome a saída do pipeline upstream, é necessário especificar que, quando o pipeline downstream for executado usando esse acionador, ele também receberá o diretório de entrada a ser lido, que é o diretório em que o pipeline upstream gerou a saída. Esse processo é chamado de transmitir a configuração do payload, que você define com argumentos do ambiente de execução. Ele permite que você tenha um conjunto de pipelines dinâmicos que são executados usando os dados da hora, do dia, da semana ou do mês, e não um pipeline estático, que precisa ser atualizado para cada execução.
Para orquestrar pipelines com acionadores, siga este processo:
Crie pipelines upstream e downstream.
- No Cloud Data Fusion Studio, projete e implante os pipelines que formam sua cadeia de orquestração.
- Considere qual pipeline será ativado pela conclusão do próximo (a jusante) no seu fluxo de trabalho.
Opcional: transmita argumentos de execução para pipelines upstream.
- Se você precisar transmitir a configuração do payload como argumentos do ambiente de execução entre pipelines, configure os argumentos do ambiente de execução. Esses argumentos podem ser transmitidos para o pipeline downstream durante a execução.
Crie um gatilho de entrada no pipeline downstream.
- No Cloud Data Fusion Studio, acesse a página Lista. Na guia Implantação, 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 vai aparecer.
- Clique no pipeline upstream. Selecione um ou mais estados de conclusão do pipeline upstream (Bem-sucedidos, Falhas ou Paradas) como a condição para quando o pipeline downstream será executado.
- Se você quiser que o pipeline upstream compartilhe informações (chamada de configuração de payload) com o pipeline downstream, clique em Configuração do gatilho e siga as etapas para transmitir a configuração do payload como argumentos de tempo de execução. Caso contrário, clique em Ativar gatilho.
Teste o acionador.
- Inicie uma execução do pipeline upstream.
- Se o acionador 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 de 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 usadas pelo pipeline downstream para decisões como determinar o conjunto de dados certo para ler.
Para transmitir informações do pipeline upstream para o pipeline downstream, defina os argumentos de tempo de execução do pipeline downstream com os valores dos argumentos de ambiente de execução ou a 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 do payload como argumentos do ambiente de execução, siga estas etapas:
- Continue de onde você parou na seção Como criar um gatilho de entrada, depois de clicar em Configuração do gatilho, todos os argumentos de ambiente de execução que você definiu anteriormente do pipeline upstream vão aparecer. Escolha os argumentos de ambiente de execução que serão transmitidos do pipeline upstream para o pipeline downstream quando o acionador for executado.
- Clique na guia Configuração do plug-in para ver uma lista do que será transmitido do pipeline upstream para o pipeline downstream quando for acionado.
- Clique em Configurar e ativar gatilho.