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

Tez

Tez é a mais recente estrutura de computação de código aberto do Apache que suporta jobs de Grafo Direcionado Acíclico (DAG). Ele pode converter vários jobs dependentes em um job, melhorando significativamente o desempenho dos jobs de DAG.

O MRS usa o Tez como mecanismo de execução padrão do Hive. Tez supera notavelmente o mecanismo de computação do MapReduce original em termos de eficiência de execução.

Para detalhes sobre Tez, veja https://tez.apache.org/.

Relação entre Tez e MapReduce

Tez usa um DAG para organizar tarefas de MapReduce. No DAG, um nó é um RDD e uma borda indica uma operação no RDD. A ideia central é dividir ainda mais as tarefas Map e Reduce. Uma tarefa Map é dividida nas tarefas Input-Processor-Sort-Merge-Output, e a tarefa Reduce é dividida nas tarefas Input-Shuffle-Sort-Merge-Process-output. Tez reagrupa de forma flexível várias pequenas tarefas para formar um grande job de DAG.

Figura 1 Processos para enviar tarefas usando o Hive no MapReduce e o Hive no Tez

Uma tarefa de Hive no MapReduce contém várias tarefas do MapReduce. Cada tarefa armazena resultados intermediários no HDFS. O redutor na etapa anterior fornece dados para o mapeador na próxima etapa. Uma tarefa de Hive on Tez pode concluir o mesmo processo de processamento em apenas uma tarefa, e o HDFS não precisa ser acessado entre as tarefas.

Relação entre Tez e Yarn

Tez é uma estrutura de computação executando no Yarn. O ambiente de tempo de execução consiste em ResourceManager e ApplicationMaster do Yarn. O ResourceManager é um novo sistema de gerenciamento de recursos, e o ApplicationMaster é responsável por cortar dados de jobs do MapReduce, atribuir tarefas, solicitar recursos, agendar tarefas e tolerar falhas. Além disso, TezUI depende do TimelineServer fornecido pelo Yarn para exibir o processo de execução das tarefas do Tez.