Verschil tussen Hadoop en MapReduce

De wortels van Hadoop dateren uit het jaar 2002, toen Dough Cutting werkte aan een open source-project met de naam Nutch (dat werd gebruikt om de webpagina's te indexeren en de geïndexeerde webpagina's te gebruiken voor zoeken, hetzelfde wat Google doet). Hij werd geconfronteerd met schaalbaarheidsproblemen, zowel op het gebied van opslag als computing. In 2003 publiceerde Google GFS (google-bestandssysteem) en in 2004 creëerde Nutch NDFS (Nutch gedistribueerd bestandssysteem). Nadat Google MapReduce aankondigde als hun computerbrein achter hun sorteeralgoritmen, was Dough in staat om Nutch op NDFS te draaien en MapReduce te gebruiken in het jaar 2005 en in het jaar 2006 was Hadoop geboren.

Hadoop en MapReduce! Hadoop is een Eco-systeem van open source projecten zoals Hadoop Common, Hadoop distributed file system (HDFS), Hadoop YARN, Hadoop MapReduce. Hadoop als zodanig is een open source framework voor het opslaan en verwerken van enorme datasets. Het opslaan wordt uitgevoerd door HDFS en de verwerking wordt verzorgd door MapReduce. MapReduce, aan de andere kant, is een programmeermodel waarmee je enorme gegevens kunt verwerken die zijn opgeslagen in Hadoop. Laat ons Hadoop en MapReduce in detail lezen in dit bericht.

Head to Head-vergelijking tussen Hadoop versus MapReduce (Infographics)

Hieronder vindt u de Top 5-vergelijking tussen Hadoop en MapReduce

Belangrijkste verschillen tussen Hadoop versus MapReduce

Het volgende is het verschil tussen Hadoop en MapReduce

  • Als we Hadoop en MapReduce willen onderscheiden in termen van leken, kunnen we zeggen dat Hadoop is als de auto waarin je alles hebt dat nodig is om afstanden af ​​te leggen, maar MapReduce is als de motor van de auto, dus zonder de auto kan een motor ' t bestaat maar de buitenkant van de auto kan veranderen (andere DFS (gedistribueerde bestandssystemen)).
  • Het basisidee achter Hadoop is dat de gegevens betrouwbaar en schaalbaar moeten zijn, betrouwbaar omdat in geval van een ramp of netwerkstoring de gegevens altijd beschikbaar moeten zijn en dit wordt bereikt door het raamwerk van Hadoop met behulp van Naamknooppunten en Gegevensknooppunten.
  • Een basisidee van dataknooppunten en naamknooppunten

  • Het basisidee achter de architectuur van de Data Node en Name Node is de master / slave-architectuur waar de ene de locatie van de gegevens opslaat (Name Node) en de andere de gegevens zelf (Data Node). De gegevens worden opgesplitst in brokken van 64 MB en opgeslagen in de gegevensblokken en het register hiervan wordt bijgehouden op het Naamknooppunt. De gegevens worden standaard driemaal gerepliceerd voor betrouwbaarheid. Over de schaalbaarheid gesproken, de hardware kan onderweg worden verbeterd en dit helpt om de opslag te vergroten en het systeem schaalbaar te maken.
  • Nu naar MapReduce komen, zijn er drie fasen
    1. Kaartfase
    2. Shuffle-fase
    3. Fase verminderen

Laten we een voorbeeld nemen om het beter te begrijpen. Omdat MapReduce een programmeerraamwerk is, heeft het ook een hallo wereldprogramma, maar het staat in MapReduce bekend als het woordtelprogramma.

Het Word Count-programma geeft ons de sleutel / waarde-paren van het woord en de frequentie ervan in een alinea / artikel of een gegevensbron. Om het gemakkelijk te kunnen begrijpen, nemen we het onderstaande als voorbeeldgegevens.

In de dataset hebben we drie woorden bus, auto en trein. De kolom Input heeft de gegevens zoals we die in de dataset hebben, de kolom Output bevat de gegevens in het tussenstadium waarin het shufflen zal plaatsvinden.

Hier nemen we de splitter als een komma (, ) om de woorden te splitsen. De splitter kan een komma of spatie zijn of een nieuwe regel enz.

InvoerSet van gegevenscaR, AUTO, auto, BUS, TREIN, bus, trein, bus, TREIN, BUS, buS, Auto, bus, auto, trein, auto, bus, auto
uitgangConverteer naar een andere set gegevens

(Sleutel waarde)

(Bus, 1), (Auto, 1), (bus, 1), (auto, 1), (trein, 1),

(auto, 1), (bus, 1), (auto, 1), (trein, 1), (bus, 1),

(TREIN, 1), (BUS, 1), (buS, 1), (caR, 1), (AUTO, 1),

(auto, 1), (BUS, 1), (TREIN, 1)

En de output van de bovenstaande tussenfase wordt gegeven aan het verloopstuk en hieronder is de uiteindelijke output van het programma.

Invoer

(uitvoer van kaartfunctie)

Set Tuples(Bus, 1), (Auto, 1), (bus, 1), (auto, 1), (trein, 1),

(auto, 1), (bus, 1), (auto, 1), (trein, 1), (bus, 1),

(TREIN, 1), (BUS, 1), (buS, 1), (caR, 1), (AUTO, 1),

(auto, 1), (BUS, 1), (TREIN, 1)

uitgangConverteert naar een kleinere set tupels(BUS, 7),

(CAR, 7),

(TRAIN, 4)

  • Een van de belangrijkste verschillen van Hadoop met andere frameworks voor grote gegevensverwerking is dat Hadoop de code (MapReduce-code) naar de clusters verzendt waar de gegevens worden opgeslagen in plaats van de gegevens naar code te verzenden, zoals de gegevenssets in TB's of soms in PB's het zal een vervelende taak zijn om te doen.

Hadoop vs MapReduce vergelijkingstabel

Basis voor vergelijkingHadoopMapReduce

Betekenis

De naam "Hadoop" was de naam van de speelgoedolifant van de zoon van Doug Cutting. Hij noemde dit project "Hadoop" omdat het gemakkelijk uit te spreken was.De naam "MapReduce" is ontstaan ​​volgens de functionaliteit zelf voor het toewijzen en reduceren in sleutel / waarde-paren.

Concept

De Apache Hadoop is een ecosysteem dat een omgeving biedt die betrouwbaar, schaalbaar en klaar voor gedistribueerd computergebruik is.MapReduce is een submodule van dit project, een programmeermodel dat wordt gebruikt om enorme gegevenssets te verwerken die zich op HDFS bevinden (door Hadoop gedistribueerd bestandssysteem).

Pre-requisites

Hadoop draait op implementeert HDFS (Hadoop Distributed File System)MapReduce kan worden uitgevoerd op HDFS / GFS / NDFS of een ander gedistribueerd bestandssysteem, bijvoorbeeld MapR-FS

Taal

Hadoop is een verzameling van alle modules en kan daarom ook andere programmeer- / scripttalen bevattenMapReduce is in principe geschreven in de programmeertaal Java

Kader

Hadoop heeft niet alleen een opslagframework waarin de gegevens worden opgeslagen, maar maakt ook naamknooppunten en gegevensknooppunten, maar heeft ook andere frameworks, waaronder MapReduce zelf.MapReduce is een programmeerraamwerk dat een sleutel, waardetoewijzingen gebruikt om de gegevens te sorteren / verwerken

De onderstaande afbeelding helpt bij het onderscheiden van MapReduce van Hadoop.

MapReduce Framework

  • Zoals we in de bovenstaande afbeelding kunnen zien, is MapReduce een gedistribueerd verwerkingsraamwerk, terwijl Hadoop een verzameling van alle raamwerken is.

Conclusie - Hadoop versus MapReduce

Als open source had Hadoop aan populariteit gewonnen omdat het gratis te gebruiken was en de programmeurs de code volgens hun behoeften kunnen wijzigen. Het Hadoop Eco-systeem is de afgelopen jaren continu ontwikkeld om het Eco-systeem zo bugvrij mogelijk te maken.

Met de steeds veranderende behoeften van de wereld verandert de technologie snel en wordt het moeilijk om de veranderingen bij te houden. De gegevens die in een maand worden gegenereerd, worden tijdens het lezen van dit artikel verdubbeld / verdrievoudigd en de behoefte aan snellere verwerking van gegevenssets leidde tot veel andere programmeerkaders, zoals MapReduce 2, Spark enz.

Aanbevolen artikelen

Dit is een leidraad geweest voor Hadoop versus MapReduce, hun betekenis, vergelijking van persoon tot persoon, belangrijkste verschillen, vergelijkingstabel en conclusie. U kunt ook de volgende artikelen bekijken voor meer informatie -

  1. Verschil tussen Hadoop versus Roodverschuiving
  2. Ontdek het 6 beste verschil tussen Apache Hadoop en Apache Storm
  3. Vergelijkingen tussen Hadoop versus SQL
  4. Weten over Map Reduce vs Spark
  5. Hadoop vs Spark: Functies
  6. Laravel vs Codeigniter: Functies

Categorie: