SnapLogic Hadooplex: Raggiungere la scalabilità elastica con YARN

Elastic-big-dataYARN, uno dei principali progressi di Hadoop 2.0, è un gestore di risorse che separa la gestione dell'esecuzione e dell'elaborazione dalle funzionalità di gestione delle risorse di MapReduce. Come un sistema operativo su un server, YARN è progettato per consentire l'esecuzione di applicazioni utente multiple e diverse su una piattaforma multi-tenant.

Gli sviluppatori non sono più limitati a scrivere programmi MapReduce multi-pass con svantaggi come l'alta latenza, quando un'opzione migliore può essere modellata usando un approccio grafico aciclico diretto (DAG).

Qualsiasi applicazione, comprese quelle come Spark, può essere distribuita su un cluster Hadoop esistente e sfruttare YARN per lo scheduling e l'allocazione delle risorse. Questo è anche l'ingrediente base di un Hadooplex in SnapLogic, per ottenere uno scale out e uno scale in elastici per i lavori di integrazione.

L'ApplicationMaster per applicazione è, in effetti, un framework specifico di una libreria e ha il compito di negoziare le risorse dal ResourceManager e di lavorare con i NodeManager per eseguire e monitorare le attività.

L'application master di SnapLogic è responsabile della negoziazione delle risorse con il ResourceManager. Il piano di controllo di SnapLogic è il cervello (leggete questo post sull'integrazione definita dal software), che contiene tutte le informazioni critiche e aiuta a prendere decisioni logiche per lo scale out e lo scale in. Il Hadooplex è l'applicazione vera e propria che esegue il carico di lavoro.

In questo diagramma si può notare che l'Hadooplex riporta le informazioni sul carico di lavoro al piano di controllo a intervalli regolari. L'application master riceve le informazioni sul carico dal piano di controllo, anch'esso a intervalli regolari.

Hadooplex

Quando il carico di lavoro aumenta, il master dell'applicazione richiede al ResourceManager di YARN di avviare altri nodi Hadooplex uno alla volta, come mostrato nel diagramma seguente. Questo ridimensionamento avviene dinamicamente fino a quando il carico di lavoro non inizia a diminuire o fino a quando non viene raggiunto il numero massimo di nodi Hadooplex consentito.

Nodi Hadooplex

Quando il carico di lavoro diminuisce, i nodi iniziano a girare a vuoto. In questo modo SnapLogic ottiene una scalatura elastica in base ai volumi del carico di lavoro all'interno di un cluster Hadoop utilizzando il ResourceManager YARN. Questo è possibile solo se l'applicazione è nativa YARN. (Leggete qui l'importanza di YARN-nativo).

Le prossime tappe:

Questo post è stato pubblicato originariamente su LinkedIn.

Categoria: Prodotto

Stiamo assumendo!

Scoprite la vostra prossima grande opportunità di carriera.