Video: hadoop yarn architecture 2025
, per coloro che stanno appena arrivando a questo particolare party, sta per Yet Another Resource Negotiator, uno strumento che consente ad altri framework di elaborazione dati di girare su Hadoop. La gloria di YARN è che presenta Hadoop con una soluzione elegante a una serie di sfide da lungo tempo.
YARN ha lo scopo di fornire una pianificazione del carico di lavoro più efficiente e flessibile, nonché una funzione di gestione delle risorse, che consentirà a Hadoop di eseguire più di semplici lavori MapReduce.
La figura mostra in termini generali come YARN si adatta a Hadoop e chiarisce anche come ha permesso a Hadoop di diventare una vera piattaforma per l'elaborazione dei dati. Il seguente elenco dà il testo alla melodia:
-
Archiviazione distribuita: Qui non è cambiato nulla con il passaggio da MapReduce a YARN - HDFS è ancora il livello di archiviazione per Hadoop.
-
Gestione risorse: Il concetto chiave sottostante nel passaggio a YARN da Hadoop 1 è il disaccoppiamento della gestione delle risorse dall'elaborazione dei dati. Ciò consente a YARN di fornire risorse a qualsiasi framework di elaborazione scritto per Hadoop, incluso MapReduce.
-
Framework di elaborazione: Poiché YARN è una funzionalità di gestione delle risorse di uso generale, può allocare risorse cluster a qualsiasi framework di elaborazione dati scritto per Hadoop. Il framework di elaborazione gestisce quindi i problemi di runtime dell'applicazione.
Per mantenere la compatibilità per tutto il codice sviluppato per Hadoop 1, MapReduce funge da primo framework disponibile per l'uso su YARN. Al momento della stesura di questo documento, il progetto Apache Tez era un progetto di incubazione in via di sviluppo come framework alternativo per l'esecuzione di applicazioni Pig e Hive. Probabilmente Tez emergerà come configurazione Hadoop standard.
-
Application Programming Interface (API): Con il supporto di ulteriori framework di elaborazione, verrà il supporto per ulteriori API. Al momento della stesura di questo libro, Hoya (per l'esecuzione di HBase su YARN), Apache Giraph (per l'elaborazione di grafici), Open MPI (per il trasferimento di messaggi in sistemi paralleli), Apache Storm (per l'elaborazione del flusso di dati) è in fase di sviluppo.
