Rozdiel medzi MapReduce a Spark

Mapa Reduce je open-source framework pre zápis dát do HDFS a spracovanie štruktúrovaných a neštruktúrovaných dát prítomných v HDFS. Mapa Reduce je obmedzená na dávkové spracovanie a na iných zariadeniach Spark je schopný vykonávať akýkoľvek typ spracovania. SPARK je nezávislý procesor na spracovanie v reálnom čase, ktorý je možné nainštalovať na ľubovoľný systém distribuovaných súborov, napríklad Hadoop. SPARK poskytuje výkon, ktorý je 10-krát rýchlejší ako Map Reduce na disku a 100-krát rýchlejší ako Map Reduce v sieti v pamäti.

Potreba SPARK

  • Iteratívna analýza: Zníženie mapy nie je také efektívne ako SPARK na riešenie problémov, ktoré vyžadujú iteratívnu analýzu, ako to musí ísť na disk pre každú iteráciu.
  • Interaktívna analytika: Zníženie mapy sa často používa na spúšťanie ad-hoc dopytov, pre ktoré sa musí dostať do pamäte na disku, ktorá opäť nie je taká efektívna ako SPARK, pretože táto sa spomína v rýchlejšej pamäti v pamäti.
  • Nevhodné pre OLTP: Keďže pracuje na dávkovo orientovanom rámci, nie je vhodné pre veľký počet krátkych transakcií.
  • Nevhodné pre graf: Knižnica Apache Graph spracúva graf, ktorý zvyšuje zložitosť aplikácie Map Reduce.
  • Nevhodné pre triviálne operácie: Pri operáciách, ako sú filtre a spojenia, bude možno potrebné prepísať úlohy, čo je kvôli zložitosti kľúč - hodnota zložitejšie.

Porovnanie medzi hlavami medzi MapReduce a Spark (infografika)

Nižšie je uvedený 15 najlepších rozdielov medzi MapReduce a Spark

Hlavné rozdiely medzi MapReduce a Spark

Nižšie sú uvedené zoznamy bodov, opíšte kľúčové rozdiely medzi MapReduce a Spark:

  • Spark je vhodný pre prácu v reálnom čase, pretože sa používa v pamäti, zatiaľ čo MapReduce je obmedzený na dávkové spracovanie.
  • Spark má RDD (Resilient Distributed Dataset), ktorá nám poskytuje operátorov na vysokej úrovni, ale v Map redu musíme potrebovať kódovať každú operáciu, čo je porovnateľne ťažké.
  • Spark dokáže spracovávať grafy a podporuje nástroj Strojové učenie.
  • Nižšie je uvedený rozdiel medzi ekosystémom MapReduce a Spark.

Príklady, kde sú vhodné MapReduce vs Spark, sú nasledujúce

Spark: Detekcia podvodov s kreditnými kartami

MapReduce: Tvorba pravidelných správ, ktoré si vyžadujú rozhodovanie.

Porovnávacia tabuľka MapReduce verzus Spark

Základ porovnaniaMapReduceiskra
rámecOpen-source framework pre zápis dát do HDFS a spracovanie štruktúrovaných a neštruktúrovaných dát prítomných v HDFS.Rámec s otvoreným zdrojom pre rýchlejšie a všeobecné spracovanie údajov
rýchlosťMap-Reduce spracúva údaje (načítava a zapisuje) z disku, takže v porovnaní s programom Spark je tok údajov pomalý.

Spark je najmenej 10x rýchlejší na disku a 100x rýchlejší v pamäti ako Map Reduce.
ObtiažnosťKaždý proces musíme kódovať / spracovať.Vďaka dostupnosti RDD (Resilient Distributed Dataset) je ľahké programovať.
Reálny časNevhodné pre transakciu OLTP iba ​​pre dávkový režimDokáže spracovať spracovanie v reálnom čase. Používanie služby SPARK Streaming.
latenciaRámec výpočtovej techniky vysokej úrovne latencieVýpočtový rámec s nízkou úrovňou latencie.
Odolnosť proti chybámMaster démoni kontrolujú tlkot srdca démonov otrokov av prípade zlyhania démonov otrokov démoni master démonov preplánujú všetky čakajúce a prebiehajúce operácie na iného otroka.RDD poskytujú odolnosť voči poruchám SPARK. Vzťahujú sa na súbor údajov, ktorý sa nachádza v externom ukladacom priestore (HDFS, HBase) a pracujú paralelne.
SchedulerV aplikácii Map Reduce používame externý plánovač, napríklad Oozie.Keďže SPARK pracuje s výpočtom v pamäti, správa sa ako svoj vlastný plánovač.
nákladyMapa Reduce je porovnateľne lacnejšia v porovnaní s SPARKom.Keďže pracuje v pamäti, vyžaduje si to veľa pamäte RAM, čo ho robí relatívne nákladnejším.
Platforma bola vyvinutá dňaMapa Reduce bola vyvinutá pomocou Java.SPARK bol vyvinutý pomocou Scala.
Podporovaný jazykMapa Reduce v podstate podporuje C, C ++, Ruby, Groovy, Perl, Python.Spark podporuje Scala, Java, Python, R, SQL.
Podpora SQLSlužba Map Reduce spúšťa dotazy pomocou jazyka Hive Query Language.Spark má svoj vlastný dopytovací jazyk známy ako Spark SQL.
škálovateľnosťDo mapy Zmenšiť môžeme pridať až n počtu uzlov. Najväčší klaster Hadoop má 14000 uzlov.V programe Spark tiež môžeme pridať n počet uzlov. Najväčší klaster Spark má 8000 uzlov.
Strojové učenieMap Reduce podporuje nástroj Apache Mahout pre strojové učenie.Spark podporuje nástroj MLlib pre strojové učenie.
cachingZníženie mapy nie je schopné ukladať do vyrovnávacej pamäte dáta v pamäti, takže nie je také rýchle ako v porovnaní s programom Spark.Spark ukladá údaje v pamäti na ďalšie iterácie, takže je veľmi rýchle v porovnaní s mapou Reduce.
zabezpečeniaMapa Reduce podporuje viac bezpečnostných projektov a funkcií v porovnaní s programom SparkBezpečnosť iskier ešte nie je vyspelá, ako pri Map Reduce

Záver - MapReduce vs Spark

Pokiaľ ide o vyššie uvedený rozdiel medzi MapReduce a Spark, je celkom zrejmé, že SPARK je v porovnaní s Map Reduce oveľa vyspelejším výpočtovým motorom. Spark je kompatibilný s akýmkoľvek typom formátu súboru a je tiež oveľa rýchlejší ako Map Reduce. Iskra má tiež schopnosti spracovania grafov a strojového učenia.

Na jednej strane je Map Reduce obmedzený na dávkové spracovanie a na druhej strane Spark je schopný vykonávať akýkoľvek typ spracovania (dávkové, interaktívne, iteračné, streamingové, grafické). Vďaka vysokej kompatibilite je Spark obľúbeným programom Data Scientist, a preto nahrádza Map Reduce a rýchlo rastie. Stále však musíme údaje ukladať v HDFS a niekedy potrebujeme aj HBase. Aby sme dostali to najlepšie, musíme spustiť Spark aj Hadoop.

Odporúčané články:

Toto bol sprievodca MapReduce verzus Spark, ich význam, porovnanie medzi dvoma hlavami, kľúčové rozdiely, porovnávacie tabuľky a závery. Ďalšie informácie nájdete aj v nasledujúcich článkoch -

  1. 7 dôležitých vecí o Apache Spark (Sprievodca)
  2. Hadoop vs Apache Spark - zaujímavé veci, ktoré potrebujete vedieť
  3. Apache Hadoop vs Apache Spark | Top 10 porovnaní, ktoré musíte vedieť!
  4. Ako funguje MapReduce?
  5. Sútok technológie a obchodnej analýzy

Kategórie: