Apache-tajo-architecture

提供:Dev Guides
移動先:案内検索

Apache Tajo-アーキテクチャ

次の図は、Apache Tajoのアーキテクチャを示しています。

アーキテクチャ

次の表に、各コンポーネントの詳細を示します。

S.No. Component & Description
1

Client

  • クライアント*は、SQLステートメントをTajoマスターに送信して結果を取得します。
2

Master

マスターはメインデーモンです。 クエリの計画を担当し、ワーカーのコーディネーターです。

3

Catalog server

テーブルとインデックスの説明を維持します。 マスターデーモンに組み込まれています。 カタログサーバーは、Apache Derbyをストレージレイヤーとして使用し、JDBCクライアントを介して接続します。

4

Worker

マスターノードはタスクをワーカーノードに割り当てます。 TajoWorkerはデータを処理します。 TajoWorkersの数が増えると、処理能力も直線的に増加します。

5

Query Master

Tajoマスターは、クエリをクエリマスターに割り当てます。 クエリマスターは、分散実行プランの制御を担当します。 TaskRunnerを起動し、TaskRunnerにタスクをスケジュールします。 クエリマスターの主な役割は、実行中のタスクを監視し、それらをマスターノードに報告することです。

6

Node Managers

ワーカーノードのリソースを管理します。 ノードへのリクエストの割り当てを決定します。

7

TaskRunner

ローカルクエリ実行エンジンとして機能します。 クエリプロセスの実行と監視に使用されます。 TaskRunnerは一度に1つのタスクを処理します。

それは次の3つの主な属性を持っています-

  • 論理計画-タスクを作成した実行ブロック。
  • フラグメント-入力パス、オフセット範囲、およびスキーマ。 *URIを取得します
8
  • Query Executor*

クエリの実行に使用されます。

9

Storage service

基礎となるデータストレージをTajoに接続します。

ワークフロー

Tajoは、Hadoop分散ファイルシステム(HDFS)をストレージレイヤーとして使用し、MapReduceフレームワークの代わりに独自のクエリ実行エンジンを備えています。 Tajoクラスターは、1つのマスターノードとクラスターノード全体の多数のワーカーで構成されます。

マスターは、主にクエリの計画とワーカーのコーディネーターを担当します。 マスターはクエリを小さなタスクに分割し、ワーカーに割り当てます。 各ワーカーには、物理​​演算子の有向非循環グラフを実行するローカルクエリエンジンがあります。

さらに、TajoはMapReduceよりも柔軟に分散データフローを制御でき、インデックス作成技術をサポートしています。

TajoのWebベースのインターフェイスには次の機能があります-

  • 送信されたクエリの計画方法を見つけるオプション
  • クエリがノード間でどのように分散されているかを見つけるオプション
  • クラスターとノードの状態を確認するオプション