Apache-tajo-architecture
Apache Tajo-アーキテクチャ
次の図は、Apache Tajoのアーキテクチャを示しています。
次の表に、各コンポーネントの詳細を示します。
S.No. | Component & Description |
---|---|
1 |
Client
|
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つの主な属性を持っています-
|
8 |
クエリの実行に使用されます。 |
9 |
Storage service 基礎となるデータストレージをTajoに接続します。 |
ワークフロー
Tajoは、Hadoop分散ファイルシステム(HDFS)をストレージレイヤーとして使用し、MapReduceフレームワークの代わりに独自のクエリ実行エンジンを備えています。 Tajoクラスターは、1つのマスターノードとクラスターノード全体の多数のワーカーで構成されます。
マスターは、主にクエリの計画とワーカーのコーディネーターを担当します。 マスターはクエリを小さなタスクに分割し、ワーカーに割り当てます。 各ワーカーには、物理演算子の有向非循環グラフを実行するローカルクエリエンジンがあります。
さらに、TajoはMapReduceよりも柔軟に分散データフローを制御でき、インデックス作成技術をサポートしています。
TajoのWebベースのインターフェイスには次の機能があります-
- 送信されたクエリの計画方法を見つけるオプション
- クエリがノード間でどのように分散されているかを見つけるオプション
- クラスターとノードの状態を確認するオプション