Co je MapReduce? - Naučte se příklad a výhody MapReduce

Obsah:

Anonim

Co je MapReduce?

Programovací rámec MapReduce se používá k provádění distribuovaného a paralelního zpracování s velkými datovými sadami v distribuovaném prostředí. Map a Reduce jsou dva odlišné úkoly programu pro zmenšení mapy. Nejprve ve fázi mapy se načtou data a z ní se vygenerují páry klíč-hodnota. Pak jsou tyto páry klíč-hodnota přiváděny do redukční úlohy, která agreguje data páru klíč-hodnota do menší sady hodnot produkujících konečný výstup. Úloha redukce je tedy vždy implementována po dokončení úlohy mapy. Je velmi snadné škálovat zpracování dat na více výpočetních uzlech.

V programu jsou zejména tři fáze:

  1. Mapa Stage
  2. Shuffle Stage
  3. Omezte fázi

Příklad :

Wordcount problem-

Předpokládejme, že níže jsou vstupní data:

  • Mike Jon Jake
  • Paul Paul Jake
  • Mike Paul Jon

1. Výše ​​uvedená data jsou rozdělena do tří vstupních částí, jak je uvedeno níže:

  • Mike Jon Jake
  • Paul Paul Jake
  • Mike Paul Jon

2. Poté jsou tato data přenesena do další fáze nazývané mapovací fáze.

Takže pro první řádek (Mike Jon Jake) máme 3 páry klíč - hodnota - Mike, 1; Jon, 1; Jake, 1.

Níže je výsledek fáze mapování:

  • Mike, 1
    Jon, 1
    Jake, 1
  • Paul, 1
    Paul, 1
    Jake, 1
  • Mike, 1
    Paul, 1
    Jon, 1

3. Výše ​​uvedená data jsou pak vedena do další fáze nazývané fáze třídění a míchání.

V této fázi jsou data seskupena do jedinečných klíčů a jsou tříděna. Níže je uveden výsledek třídění a míchání:

  • Jake, (1, 1)
  • Jon, (1, 1)
  • Mike, (1, 1)
  • Paul, (1, 1, 1)

4. Výše ​​uvedená data jsou pak vedena do další fáze zvané redukční fáze.

Zde se agregují všechny klíčové hodnoty a spočítá se počet 1s. Níže je uveden výsledek ve fázi redukce:

  • Jake, 2
  • Jon, 2
  • Mike, 2
  • Paul, 3

Výhody MapReduce:

Zde se naučíme některé důležité výhody programovacího rámce MapReduce,

1. Škálovatelnost

Hadoop jako platforma, která je vysoce škálovatelná a je do značné míry způsobena schopností ukládat a distribuovat velké soubory dat na mnoho serverů. Zde použité servery jsou poměrně levné a mohou pracovat paralelně. Výkon zpracování systému lze zlepšit přidáním více serverů. Tradiční systémy správy relačních databází nebo RDBMS nebyly schopny škálovat zpracování obrovských datových sad.

2. Flexibilita

Programovací model Hadoop MapReduce nabízí flexibilitu při zpracování struktury nebo nestrukturovaných dat různými obchodními organizacemi, které mohou data využívat a mohou pracovat s různými typy dat. Mohou tedy generovat obchodní hodnotu z těch dat, která jsou pro obchodní organizace smysluplná a užitečná pro analýzu. Bez ohledu na zdroj dat, zda se jedná o sociální média, clickstream, e-mail atd., Hadoop nabízí podporu pro mnoho jazyků používaných pro zpracování dat. Spolu s tím vším umožňuje programování Hadoop MapReduce mnoho aplikací, jako je marketingová analýza, systém doporučení, datový sklad a detekce podvodů.

3. Zabezpečení a ověřování

Pokud kdokoli cizí osoba získá přístup ke všem datům organizace a může manipulovat s více petabajty dat, může to značně poškodit, pokud jde o obchodní jednání v provozu obchodní organizace. Toto riziko je řešeno programovým modelem MapReduce pomocí práce s hdfs a HBase, což umožňuje vysokou bezpečnost umožňující operaci uložených dat v systému pouze schválenému uživateli.

4. Nákladově efektivní řešení

Takový systém je vysoce škálovatelný a představuje nákladově efektivní řešení pro obchodní model, který potřebuje ukládat data, která rostou exponenciálně v souladu s požadavky dnešní doby. V případě starých tradičních systémů správy relačních databází nebylo z hlediska škálovatelnosti zpracování dat tak snadné jako u systému Hadoop. V takových případech byl podnik nucen data zmenšit a dále implementovat klasifikaci na základě předpokladů, jak by mohla být určitá data pro organizaci přínosná, a tudíž odebrání prvotních dat. Na záchranu přichází architektura Hadoop scaleout s programováním MapReduce.

5. Rychle

Distribuovaný souborový systém Hadoop HDFS je klíčovou funkcí používanou v Hadoop, která v podstatě implementuje mapovací systém pro lokalizaci dat v klastru. Programování MapReduce je nástroj používaný pro zpracování dat a je umístěn také na stejném serveru, který umožňuje rychlejší zpracování dat. Hadoop MapReduce zpracovává velké objemy dat, která jsou nestrukturovaná nebo polostrukturovaná za kratší dobu.

6. Jednoduchý model programování

Programování MapReduce je založeno na velmi jednoduchém programovacím modelu, který v podstatě umožňuje programátorům vyvinout program MapReduce, který zvládne mnohem více úkolů snadněji a efektivněji. Programovací model MapReduce je psán pomocí jazyka Java, je velmi populární a velmi snadno se učí. Pro lidi je snadné naučit se programování a návrh datového modelu Java, který vyhovuje jejich podnikovým potřebám.

7. Paralelní zpracování

Programovací model dělí úkoly způsobem, který umožňuje paralelní provádění nezávislého úkolu. Toto paralelní zpracování proto usnadňuje procesům převzít každý z úkolů, které pomáhají spustit program v mnohem kratším čase.

8. Dostupnost a odolnost

Programovací model Hadoop MapReduce zpracovává data tak, že je odešle do jednotlivého uzlu a předá stejnou sadu dat ostatním uzlům sídlícím v síti. Výsledkem je, že v případě selhání v konkrétním uzlu je stejná kopie dat stále k dispozici na ostatních uzlech, které mohou být použity, kdykoli je to nutné pro zajištění dostupnosti dat.
Tímto způsobem je Hadoop odolný vůči chybám. Toto je jedinečná funkce nabízená v Hadoop MapReduce, která je schopna rychle rozpoznat chybu a použít rychlou opravu pro řešení automatické obnovy.

Existuje mnoho společností po celém světě, které používají map-redukovat jako facebook, yahoo atd.

Závěr - Co je MapReduce

Map redukovat má velkou schopnost, pokud jde o zpracování velkých dat ve srovnání s tradičními RDBMS systémy. Mnoho organizací již využilo svůj potenciál a přechází k této nové technologii. Je zřejmé, že mapové redukce mají velmi dlouhou cestu ve velké platformě pro zpracování dat.

Doporučené články

Toto byl průvodce Co je MapReduce. Zde jsme diskutovali základní koncept, příklady a výhody MapReduce. Další informace naleznete také v dalších navrhovaných článcích -

  1. Co je to JavaScript?
  2. MapReduce Interview Otázky
  3. Co je Python
  4. Jak MapReduce funguje
  5. Co je Big data a Hadoop