Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2023-05-19 GMT+08:00

Princípios básicos do Oozie

Introdução ao Oozie

Oozie é um mecanismo de fluxo de trabalho de código aberto usado para agendar e coordenar jobs do Hadoop.

Arquitetura

O mecanismo Oozie é uma aplicação Web integrada ao Tomcat por padrão. Oozie usa bancos de dados PostgreSQL.

O Oozie fornece um console da Web baseado em Ext, através do qual os usuários podem visualizar e monitorar os fluxos de trabalho do Oozie. O Oozie fornece uma API de serviço Web REST externa para o cliente de Oozie controlar fluxos de trabalho (como iniciar e parar operações) e orquestrar e executar tarefas de MapReduce do Hadoop. Para mais detalhes, consulte Figura 1.

Figura 1 Arquitetura de Oozie

Tabela 1 descreve as funções de cada módulo mostrado em Figura 1.

Tabela 1 Descrição da arquitetura

Nome da conexão

Descrição

Console

Permite que os usuários visualizem e monitorem os fluxos de trabalho do Oozie.

Client

Controla fluxos de trabalho, incluindo enviar, iniciar, executar, plantar e restaurar fluxos de trabalho, por meio de APIs.

SDK

É a abreviação de kit de desenvolvimento de software. Um SDK é um conjunto de ferramentas de desenvolvimento usadas por engenheiros de software para estabelecer aplicações para pacotes de software específicos, estruturas de software, plataformas de hardware e sistemas operacionais.

Database

Banco de dados PostgreSQL

WebApp (Oozie)

Funciona como o servidor Oozie. Ele pode ser implementado em um contêiner Tomcat interno ou externo. As informações registradas pelo WebApp (Oozie), incluindo logs, são armazenadas no banco de dados PostgreSQL.

Tomcat

Um servidor de aplicativos Web de código aberto gratuito

Componentes do Hadoop

Componentes subjacentes, como MapReduce e Hive, que executam os fluxos de trabalho orquestrados por Oozie.

Princípio

Oozie é um servidor de mecanismo de fluxo de trabalho que executa fluxos de trabalho do MapReduce. É também um aplicativo Web Java em execução em um contêiner de Tomcat.

Os fluxos de trabalho do Oozie são construídos usando o Hadoop Process Definition Language (HPDL). A HPDL é uma linguagem definida por XML, semelhante à JBoss jBPM Process Definition Language (jPDL). Um fluxo de trabalho do Oozie consiste no nó de controle e no nó de ação.

  • O nó de controle controla a orquestração do fluxo de trabalho, como start, end, error, decision, fork e join.
  • Um fluxo de trabalho do Oozie contém vários nós de ação, como MapReduce e Java.

    Todos os nós de ação são implementados e executados no modo Gráfico Acíclico Direto (DAG). Portanto, os nós de ação são executados na direção. Ou seja, o próximo nó de ação pode ser executado somente quando a execução do nó de ação anterior terminar. Quando um nó de ação termina, o servidor remoto chama de volta a interface do Oozie. Em seguida, Oozie executa o próximo nó de ação do fluxo de trabalho da mesma maneira até que todos os nós de ação sejam executados (as falhas de execução são contadas).

Os fluxos de trabalho Oozie fornecem vários tipos de nós de ação, como MapReduce, sistema de arquivos distribuídos do Hadoop (HDFS), Secure Shell (SSH), Java e subfluxos do Oozie, para dar suporte a uma ampla gama de requisitos de negócios.