Esta página explica a orquestração de pipelines com o Cloud Composer e os acionadores. O Cloud Data Fusion recomenda a utilização do Cloud Composer para orquestrar pipelines. Se precisar de uma forma mais simples de gerir a orquestração, use acionadores.
Composer
Orquestre pipelines com o Cloud Composer
A orquestração da execução de pipelines no Cloud Data Fusion com o Cloud Composer oferece as seguintes vantagens:
- Gestão centralizada de fluxos de trabalho: faça a gestão uniforme da execução de vários pipelines do Cloud Data Fusion.
- Gestão de dependências: para garantir a ordem de execução adequada, defina dependências entre pipelines.
- Monitorização e alertas: o Cloud Composer oferece capacidades de monitorização e alertas para falhas.
- Integração com outros serviços: o Cloud Composer permite-lhe orquestrar fluxos de trabalho que abrangem o Cloud Data Fusion e outros Google Cloud serviços.
Para orquestrar pipelines do Cloud Data Fusion com o Cloud Composer, siga este processo:
Configure o ambiente do Cloud Composer.
- Crie um ambiente do Cloud Composer. Se não tiver um, aprovisione o ambiente no seu Google Cloud projeto. Este ambiente é o seu espaço de trabalho de orquestração.
- Conceda autorizações. Certifique-se de que a conta de serviço do Cloud Composer tem as autorizações necessárias para aceder ao Cloud Data Fusion (como autorização para iniciar, parar e listar pipelines).
Defina gráficos acíclicos dirigidos (DAG) para a orquestração.
- Crie um DAG: no Cloud Composer, crie um DAG que defina o fluxo de trabalho de orquestração para os seus pipelines do Cloud Data Fusion.
- Operadores do Cloud Data Fusion: use os operadores do Cloud Data Fusion do Cloud Composer no seu DAG. Estes operadores permitem-lhe interagir programaticamente 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 respetivo ID. Tem os seguintes parâmetros:
- ID do pipeline
- Localização (Google Cloud região)
- Espaço de nomes do pipeline
- Argumentos de tempo de execução (opcional)
- Aguarde pela conclusão (opcional)
- Tempo limite (opcional)
CloudDataFusionStopPipelineOperator
Permite-lhe parar um pipeline do Cloud Data Fusion em execução.
CloudDataFusionDeletePipelineOperator
Elimina um pipeline do Cloud Data Fusion.
Crie o fluxo de trabalho DAG
Quando criar o fluxo de trabalho DAG, considere o seguinte:
- Definir dependências: use a estrutura DAG para definir dependências entre tarefas. Por exemplo, pode ter uma tarefa que aguarda a conclusão bem-sucedida de um pipeline num espaço de nomes antes de acionar outro pipeline num espaço de nomes diferente.
- Programação: programe o DAG para ser executado em intervalos específicos, como diariamente ou de hora em hora, ou defina-o para ser acionado manualmente.
Para mais informações, consulte a vista geral do Cloud Composer.
Acionadores
Orquestre pipelines com acionadores
Os acionadores do Cloud Data Fusion permitem-lhe executar automaticamente um pipeline a jusante após a conclusão (com êxito, com falha ou em qualquer condição especificada) de um ou mais pipelines a montante.
Os acionadores são úteis para as seguintes tarefas:
- Limpar os dados uma vez e, em seguida, disponibilizá-los a vários pipelines a jusante para consumo.
- Partilhar informações, como argumentos de tempo de execução e configurações de plug-ins, entre pipelines. Esta tarefa chama-se configuração de dados de teste.
- Ter um conjunto de pipelines dinâmicos que são executados com os dados da hora, do dia, da semana ou do mês, em vez de um pipeline estático que tem de ser atualizado para cada execução.
Por exemplo, tem um conjunto de dados que contém todas as informações sobre os envios da sua empresa. Com base nestes dados, quer responder a várias perguntas da empresa. Para tal, cria um pipeline que limpa os dados não processados sobre os envios, denominado Limpeza de dados de envios. Em seguida, cria um segundo pipeline, Delayed Shipments USA, que lê os dados limpos e encontra os envios nos EUA que foram atrasados mais do que um limite especificado. O pipeline Delayed Shipments USA pode ser acionado assim que o pipeline Shipments Data Cleaning a montante for concluído com êxito.
Além disso, uma vez que o pipeline a jusante consome a saída do pipeline a montante, tem de especificar que, quando o pipeline a jusante é executado com este acionador, também recebe o diretório de entrada a partir do qual deve ler (que é o diretório onde o pipeline a montante gerou a respetiva saída). Este processo é denominado transmissão da configuração da carga útil, que define com argumentos de tempo de execução. Permite ter um conjunto de pipelines dinâmicos que são executados com os dados da hora, do dia, da semana ou do mês (não um pipeline estático, que tem de ser atualizado para cada execução).
Para orquestrar pipelines com acionadores, siga este processo:
Crie pipelines a montante e a jusante.
- No Cloud Data Fusion Studio, crie e implemente os pipelines que formam a sua cadeia de orquestração.
- Considere a conclusão de que pipeline vai ativar o pipeline seguinte (a jusante) no seu fluxo de trabalho.
Opcional: transmita argumentos de tempo de execução para pipelines a montante.
- Se precisar de transmitir a configuração da carga útil como argumentos de tempo de execução entre pipelines, configure argumentos de tempo de execução. Estes argumentos podem ser transmitidos para o pipeline a jusante durante a execução.
Crie um acionador de entrada no pipeline a jusante.
- No Cloud Data Fusion Studio, aceda à página Lista. No separador Implementado, clique no nome do pipeline a jusante. É apresentada a vista de implementação para esse pipeline.
- No lado esquerdo central da página, clique em Acionadores de entrada. É apresentada uma lista de pipelines disponíveis.
- Clique no pipeline a montante. Selecione um ou mais estados de conclusão do pipeline a montante (Succeeds, Fails ou Stops) como condição para quando o pipeline a jusante deve ser executado.
- Se quiser que o pipeline a montante partilhe informações (denominadas configuração de dados de payload) com o pipeline a jusante, clique em Configuração do acionador e, de seguida, siga os passos para transmitir a configuração de dados de payload como argumentos de tempo de execução. Caso contrário, clique em Ativar acionador.
Teste o acionador.
- Inicie uma execução do pipeline a montante.
- Se o acionador estiver configurado corretamente, o pipeline a jusante é executado automaticamente após a conclusão dos pipelines a montante, com base na condição configurada.
Transmita a configuração do payload como argumentos de tempo de execução
A configuração do payload permite a partilha de informações do pipeline a montante para o pipeline a jusante. Estas 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. Estas informações são usadas pelo pipeline a jusante para tomar decisões, como determinar o conjunto de dados correto a partir do qual ler.
Para transmitir informações do pipeline a montante para o pipeline a jusante, defina os argumentos de tempo de execução do pipeline a jusante com os valores dos argumentos de tempo de execução ou da configuração de qualquer plug-in no pipeline a montante.
Sempre que o pipeline a jusante é acionado e executado, a respetiva configuração de carga útil é definida através dos argumentos de tempo de execução da execução específica do pipeline a montante que acionou o pipeline a jusante.
Para transmitir a configuração da carga útil como argumentos de tempo de execução, siga estes passos:
- Continuando de onde parou em Criar um acionador de entrada, depois de clicar em Configuração do acionador, são apresentados todos os argumentos de tempo de execução que definiu anteriormente para o seu pipeline a montante. Escolha os argumentos de tempo de execução a transmitir do pipeline a montante para o pipeline a jusante quando este acionador for executado.
- Clique no separador Configuração do plug-in para ver uma lista do que vai ser transmitido do pipeline a montante para o pipeline a jusante quando é acionado.
- Clique em Configurar e ativar acionador.