Video: Hadoop Fundamentals: Understanding the MapReduce Paradigm 2024
Pentru cea mai mare parte a istoriei lui Hadoop, MapReduce a fost singurul joc din oraș când vine vorba de prelucrarea datelor. Disponibilitatea MapReduce a fost motivul succesului lui Hadoop și, în același timp, un factor major în limitarea adoptării ulterioare.
MapReduce permite programatorilor calificați să scrie aplicații distribuite fără a fi nevoiți să vă faceți griji cu privire la infrastructura distribuită de calcul distribuită. Aceasta este o afacere foarte mare: Hadoop și cadrul MapReduce se ocupă de tot felul de complexități pe care dezvoltatorii de aplicații nu trebuie să le facă față.
De exemplu, capacitatea de a extinde în mod transparent clusterul prin adăugarea de noduri și de failover automat atât a subsistemelor de stocare a datelor, cât și a proceselor de prelucrare a datelor are loc cu impact zero asupra aplicațiilor.
Cealaltă parte a monedei este că, deși MapReduce ascunde o cantitate enormă de complexitate, nu vă puteți permite să uitați ce este: o interfață pentru programare paralelă. Aceasta este o abilitate avansată - și o barieră pentru o adoptare mai largă. Pur și simplu nu există încă mulți programatori MapReduce, și nu toată lumea are abilitatea de ao stăpâni.
În primele zile ale lui Hadoop (Hadoop 1 și înainte), ai putea rula aplicații MapReduce numai pe clustere. În Hadoop 2, componenta YARN a schimbat toate acestea prin preluarea gestionării și planificării resurselor din cadrul MapReduce și oferind o interfață generică pentru a facilita aplicațiile să ruleze pe un cluster Hadoop.
Pe scurt, aceasta înseamnă că MapReduce este acum doar unul dintre multele cadre de aplicații pe care le puteți utiliza pentru a dezvolta și a rula aplicații pe Hadoop. Deși este cu siguranță posibil să rulați aplicații utilizând alte cadre pe Hadoop, aceasta nu înseamnă că putem începe să uităm de MapReduce.
MapReduce este în prezent singurul cadru de procesare a datelor disponibil pentru Hadoop. Deși alte cadre vor deveni disponibile în cele din urmă, MapReduce are aproape o decadă de maturitate sub centură (cu aproape 4 000 de probleme JIRA finalizate, implicând sute de dezvoltatori, dacă țineți evidența).
Nu există nici o dispută: MapReduce este cel mai matur cadru al Hadoop pentru prelucrarea datelor. În plus, o cantitate semnificativă de cod MapReduce este acum în uz, ceea ce este puțin probabil să meargă oriunde în curând. Povestea scurtă: MapReduce este o parte importantă a povestirii lui Hadoop.
Proiectele Apache Hive și Apache Pig sunt foarte populare deoarece sunt mai ușor de intrare în procesarea datelor pe Hadoop. Pentru multe probleme, în special tipurile pe care le puteți rezolva cu SQL, stupul și porcul sunt instrumente excelente.Dar pentru o sarcină mai largă, cum ar fi prelucrarea statistică sau extragerea textului și mai ales pentru prelucrarea datelor nestructurate, trebuie să utilizați MapReduce.