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 porovnania | MapReduce | iskra |
rámec | 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. | 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 čas | Nevhodné pre transakciu OLTP iba pre dávkový režim | Dokáže spracovať spracovanie v reálnom čase. Používanie služby SPARK Streaming. |
latencia | Rámec výpočtovej techniky vysokej úrovne latencie | Výpočtový rámec s nízkou úrovňou latencie. |
Odolnosť proti chybám | Master 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. |
Scheduler | V 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áklady | Mapa 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ňa | Mapa Reduce bola vyvinutá pomocou Java. | SPARK bol vyvinutý pomocou Scala. |
Podporovaný jazyk | Mapa Reduce v podstate podporuje C, C ++, Ruby, Groovy, Perl, Python. | Spark podporuje Scala, Java, Python, R, SQL. |
Podpora SQL | Služ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čenie | Map Reduce podporuje nástroj Apache Mahout pre strojové učenie. | Spark podporuje nástroj MLlib pre strojové učenie. |
caching | Zníž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čenia | Mapa Reduce podporuje viac bezpečnostných projektov a funkcií v porovnaní s programom Spark | Bezpeč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 -
- 7 dôležitých vecí o Apache Spark (Sprievodca)
- Hadoop vs Apache Spark - zaujímavé veci, ktoré potrebujete vedieť
- Apache Hadoop vs Apache Spark | Top 10 porovnaní, ktoré musíte vedieť!
- Ako funguje MapReduce?
- Sútok technológie a obchodnej analýzy