Video: Technology Stacks - Computer Science for Business Leaders 2016 2024
Deoarece multe dintre implementările Hadoop existente încă nu utilizează încă un alt negociator de resurse (YARN), aruncăm o privire rapidă asupra modului în care Hadoop a gestionat prelucrarea datelor înainte de zile din Hadoop 2. Concentrați-vă pe rolul pe care demnitarul master JobTracker și daemonii slave TaskTracker au jucat în procesarea procesării MapReduce.
Întregul punct de utilizare a sistemelor distribuite este să poată implementa resursele de calcul într-o rețea de computere autonome într-un mod care să fie tolerant la greșeli, ușor și ieftin.
Într-un sistem distribuit, cum ar fi Hadoop, unde aveți un grup de noduri computerizate care lucrează în paralel, o mare complexitate are rolul de a asigura că toate piesele lucrează împreună. Ca atare, aceste sisteme au, în mod obișnuit, straturi distincte pentru a gestiona sarcini diferite pentru a sprijini procesarea paralelă a datelor.
Acest concept, cunoscut sub numele de separarea preocupărilor, asigură că, dacă sunteți, de exemplu, programatorul de aplicații, nu trebuie să vă faceți griji cu privire la detaliile specifice, de exemplu, sarcinile de hartă. În Hadoop, sistemul constă din aceste patru straturi distincte, așa cum se arată:
Sistemul distribuit de fișiere Hadoop (HDFS) este stratul de stocare în care sunt stocate seturile de date, rezultate intermediare și rezultate finale. Gestionarea resurselor:
În plus față de spațiul de pe disc, toate nodurile slave din clusterul Hadoop au cicluri CPU, RAM și lățime de bandă a rețelei. Un sistem cum ar fi Hadoop trebuie să fie capabil să distribuie aceste resurse, astfel încât aplicațiile și utilizatorii multipli să poată partaja clusterul în moduri previzibile și reglabile. Această activitate este făcută de daemonul JobTracker.
Debitul procesului MapReduce definește execuția tuturor aplicațiilor în Hadoop 1. Aceasta începe cu faza de hartă; continuă cu agregare cu amestecare, sortare sau îmbinare; și se termină cu faza de reducere. În Hadoop 1, acest lucru este de asemenea gestionat de daemonul JobTracker, execuția locală fiind gestionată de daemonii TaskTracker care rulează pe nodurile slave. Interfața de programare a aplicațiilor (API):
Aplicațiile dezvoltate pentru Hadoop 1 trebuie să fie codificate folosind API-ul MapReduce. În Hadoop 1, proiectele Hive and Pig oferă programatorilor interfețe mai ușoare pentru scrierea aplicațiilor Hadoop, iar sub hota, codul lor se compilează până la MapReduce. În lumea lui Hadoop 1 (care a fost singura lume pe care ai avut-o până curând), toate prelucrările de date se învârteau în jurul MapReduce.