Apache Tajo - Arquitetura

A ilustração a seguir descreve a arquitetura do Apache Tajo.

A tabela a seguir descreve cada um dos componentes em detalhes.

S.No. Descrição do componente
1

Client

Client envia as instruções SQL ao Tajo Master para obter o resultado.

2

Master

Master é o daemon principal. É responsável pelo planejamento da consulta e coordenador dos trabalhadores.

3

Catalog server

Mantém as descrições da tabela e do índice. Ele está embutido no daemon Master. O servidor de catálogos usa Apache Derby como camada de armazenamento e se conecta por meio do cliente JDBC.

4

Worker

O nó mestre atribui tarefas aos nós de trabalho. TajoWorker processa dados. Conforme o número de TajoWorkers aumenta, a capacidade de processamento também aumenta linearmente.

5

Query Master

O mestre tajo atribui a consulta ao mestre de consultas. O Query Master é responsável por controlar um plano de execução distribuído. Ele inicia o TaskRunner e agenda tarefas para o TaskRunner. A principal função do mestre de consultas é monitorar as tarefas em execução e relatá-las ao nó mestre.

6

Node Managers

Gerencia o recurso do nó de trabalho. Ele decide sobre a alocação de solicitações ao nó.

7

TaskRunner

Atua como um mecanismo de execução de consulta local. É usado para executar e monitorar o processo de consulta. O TaskRunner processa uma tarefa por vez.

Tem os seguintes três atributos principais -

  • Plano lógico - um bloco de execução que criou a tarefa.
  • Um fragmento - um caminho de entrada, um intervalo de deslocamento e um esquema.
  • Busca URIs
8

Query Executor

É usado para executar uma consulta.

9

Storage service

Conecta o armazenamento de dados subjacente ao Tajo.

Fluxo de Trabalho

Tajo usa o Hadoop Distributed File System (HDFS) como a camada de armazenamento e tem seu próprio mecanismo de execução de consulta em vez da estrutura MapReduce. Um cluster Tajo consiste em um nó mestre e vários trabalhadores em nós de cluster.

O mestre é o principal responsável pelo planejamento da consulta e o coordenador dos trabalhadores. O mestre divide uma consulta em pequenas tarefas e atribui aos trabalhadores. Cada trabalhador possui um mecanismo de consulta local que executa um gráfico acíclico direcionado de operadores físicos.

Além disso, o Tajo pode controlar o fluxo de dados distribuídos de forma mais flexível do que o MapReduce e oferece suporte a técnicas de indexação.

A interface baseada na web do Tajo tem os seguintes recursos -

  • Opção para descobrir como as consultas enviadas são planejadas
  • Opção para descobrir como as consultas são distribuídas entre os nós
  • Opção para verificar o status do cluster e dos nós