Vídeo: The future we're building -- and boring | Elon Musk 2024
Os fluxos de trabalho Oozie são, no seu núcleo, gráficos direcionados, onde você pode definir ações (aplicativos Hadoop) e fluxo de dados, mas sem loop - o que significa que você pode ' t definir uma estrutura onde você executaria uma operação específica uma e outra vez até que alguma condição seja atendida (um loop for, por exemplo).
Os fluxos de trabalho da Oozie são bastante flexíveis, pois você pode definir decisões baseadas em condições e caminhos bifurcados para execução paralela. Você também pode executar uma ampla gama de ações.
Nesta figura, você vê um fluxo de trabalho que mostra os recursos básicos dos fluxos de trabalho Oozie. Primeiro, um script Pig é executado e é seguido imediatamente por uma árvore de decisão. Dependendo do estado da saída, o fluxo de controle pode ir diretamente para uma operação de arquivo HDFS (Hadoop Distributed File System) (por exemplo, uma operação copyToLocal) ou para uma ação de garfo.
Se o fluxo de controle passa para a ação da forquilha, dois trabalhos são executados simultaneamente: um trabalho MapReduce e uma consulta de Hive. O fluxo de controle passa então para a operação HDFS, uma vez que o trabalho MapReduce e a consulta Hive estão finalizados. Após a operação HDFS, o fluxo de trabalho está completo.
As definições de fluxo de trabalho Oozie são escritas em XML, com base no esquema hateop de definição de idioma de processo (hPDL). Este esquema particular é, por sua vez, baseado no esquema de XML Process Definition Language (XPDL), que é um padrão independente do produto para modelagem de definições de processos de negócios.
Um fluxo de trabalho Oozie é composto por uma série de ações, codificadas por nós XML. Existem diferentes tipos de nós, representando diferentes tipos de ações ou diretivas de fluxo de controle. Cada fluxo de trabalho Oozie possui seu próprio arquivo XML, onde cada nó e suas interconexões são definidos.
Os nós de fluxo de trabalho exigem identificadores únicos porque eles são usados para identificar o próximo nó a ser processado no fluxo de trabalho. Isso significa que a ordem em que as ações são executadas depende de onde o nó de uma ação aparece no XML do fluxo de trabalho. Para ver como esse conceito se verificaria, confira a lista a seguir, que mostra um exemplo da estrutura básica do arquivo XML de um fluxo de trabalho de Oozie.
… … "Trabalho assassinado."
Neste exemplo, além do início, fim e morte de nós, você tem dois nós de ação. Cada nó de ação representa uma aplicação ou um comando sendo executado.