Apache Tajo - Mimari
Aşağıdaki çizim Apache Tajo'nun mimarisini tasvir etmektedir.
Aşağıdaki tablo her bir bileşeni ayrıntılı olarak açıklamaktadır.
S.No. | Bileşen Açıklaması |
---|---|
1 | Client Client sonucu almak için SQL ifadelerini Tajo Master'a gönderir. |
2 | Master Master, ana artalan sürecidir. Sorgu planlamasından sorumludur ve işçilerin koordinatörüdür. |
3 | Catalog server Tabloyu ve dizin açıklamalarını korur. Ana arka plan programına yerleştirilmiştir. Katalog sunucusu, depolama katmanı olarak Apache Derby'yi kullanır ve JDBC istemcisi aracılığıyla bağlanır. |
4 | Worker Ana düğüm, görevi çalışan düğümlere atar. TajoWorker verileri işler. TajoWorkers sayısı arttıkça, işleme kapasitesi de doğrusal olarak artar. |
5 | Query Master Tajo master, sorguyu Query Master'a atar. Query Master, dağıtılmış bir yürütme planını kontrol etmekten sorumludur. TaskRunner'ı başlatır ve görevleri TaskRunner'a planlar. Sorgu Yöneticisinin ana rolü, çalışan görevleri izlemek ve bunları Ana düğüme rapor etmektir. |
6 | Node Managers Çalışan düğümün kaynağını yönetir. Düğüme istekleri tahsis etmeye karar verir. |
7 | TaskRunner Yerel bir sorgu yürütme motoru görevi görür. Sorgu sürecini çalıştırmak ve izlemek için kullanılır. TaskRunner bir seferde bir görevi işler. Aşağıdaki üç ana özelliğe sahiptir -
|
8 | Query Executor Bir sorgu yürütmek için kullanılır. |
9 | Storage service Temel veri depolamasını Tajo'ya bağlar. |
İş akışı
Tajo, depolama katmanı olarak Hadoop Dağıtılmış Dosya Sistemi (HDFS) kullanır ve MapReduce çerçevesi yerine kendi sorgu yürütme motoruna sahiptir. Bir Tajo kümesi, bir ana düğümden ve küme düğümlerindeki birkaç çalışandan oluşur.
Kaptan, esas olarak sorgu planlamasından ve işçilerin koordinatöründen sorumludur. Master, sorguyu küçük görevlere böler ve işçilere atar. Her çalışanın, fiziksel operatörlerin yönlendirilmiş döngüsel olmayan grafiğini yürüten yerel bir sorgu motoru vardır.
Ek olarak, Tajo dağıtılmış veri akışını MapReduce'tan daha esnek bir şekilde kontrol edebilir ve indeksleme tekniklerini destekler.
Tajo'nun web tabanlı arayüzü aşağıdaki yeteneklere sahiptir -
- Gönderilen sorguların nasıl planlandığını bulma seçeneği
- Sorguların düğümler arasında nasıl dağıtıldığını bulma seçeneği
- Küme ve düğümlerin durumunu kontrol etme seçeneği