Čo je to Hadoop Streaming?

Hadoop streaming je nástroj dodávaný s Hadoop distribúciou, ktorý možno použiť na vykonávanie programov na analýzu veľkých dát. Existuje niekoľko jazykov, ktoré možno použiť na vykonanie tohto, ako je Java, Scala, Unix, Perl, Python a mnoho ďalších. Tento nástroj nám pomáha pri vytváraní a spúšťaní mapových redukčných úloh, pričom akýkoľvek spustiteľný súbor alebo skript je mapovač a / alebo redukčný program.

definícia

Je to distribúcia Hadoop s obslužným programom. Nástroj nám pomáha vytvárať a spúšťať konkrétne úlohy MapReduce s spustiteľným programom alebo skriptom ako mapovačom a / alebo redukčným programom.

porozumenie

Distribúcia Hadoop poskytuje java nástroje, ktoré sa nazývajú streamovanie Hadoop. Obslužný program je zabalený do súboru JAR. Pomocou nástroja môžeme vytvárať a spúšťať úlohy MapReduce pomocou spustiteľného skriptu. Okrem toho môžeme vytvoriť spustiteľné skripty na spustenie funkcií mapovača a redukcie. Spustiteľné skripty sa odovzdávajú do streamu Hadoop pomocou príkazu. Po odovzdaní skriptov do streamu Hadoop vytvorí nástroj streamu Hadoop mapu a zredukuje úlohy a odošle ich do klastra. Tieto úlohy môžu byť tiež monitorované pomocou tohto nástroja.

Ako to funguje?

Skript určený pre mapovač a redukciu funguje takto:

Po úplnej inicializácii mapovacieho skriptu spustí inštanciu skriptu s rôznymi ID procesov. Úloha mapovača pri behu berie vstupné riadky a odovzdáva ich štandardnému vstupu. Výstupy zo štandardného výstupu procesu zároveň zbiera mapovač. Každý riadok prevádza na pár kľúč - hodnota. Sada párov kľúč - hodnota sa potom zbiera ako výstup z mapovača. Pár kľúč - hodnota je vybraný na základe prvého znaku karty. Časť riadku až po počiatočnú kartu je vybraná ako kľúč, zatiaľ čo zvyšok riadku je vybraný ako hodnotná súčasť. V prípade, že karta nie je v riadku, potom je ako riadok zvolený celkový riadok a pre riadok neexistuje žiadna hodnota. Toto je možné upraviť podľa obchodných potrieb.

Účel použitia streamu Hadoop

Používa sa na príjem údajov v reálnom čase, ktorý možno použiť v rôznych aplikáciách v reálnom čase. Existujú rôzne aplikácie v reálnom čase, ako napríklad sledovanie akciových portfólií, analýza zdieľaného trhu, rozprávanie o počasí, dopravné výstrahy, ktoré sa vykonávajú pomocou streamovania Hadoop.

Práca s Hadoop Streaming

Nižšie je uvedený jednoduchý príklad toho, ako funguje streamovanie Hadoop:

$HADOOP_HOME/bin/hadoop jar $HADOOP_HOME/hadoop-streaming.jar \
-input myInputDirs \
-output myOutputDir \
-mapper org.apache.hadoop.mapred.lib.IdentityMapper \
-reducer /bin/wc

Príkaz input sa používa na poskytnutie vstupného adresára, zatiaľ čo príkaz output sa používa na poskytnutie výstupného adresára. Príkaz mapper sa používa na určenie spustiteľnej triedy mapovača, zatiaľ čo príkaz reduktor sa používa na určenie triedy spustiteľného reduktora.

Výhody streamovania Hadoop

Výhody streamu Hadoop sú nižšie:

1. Dostupnosť

To nevyžaduje inštaláciu a správu ďalšieho samostatného softvéru. Existujú aj iné nástroje, ako je prasa, úľ, ktoré sa dajú nainštalovať. Musím spravovať osobitne.

2. Učenie

Nevyžaduje sa naučiť sa nové technológie. Hadoop streaming môže byť využitý s minimálnymi Unixovými schopnosťami pre analýzu dát.

3. Skráťte čas vývoja

Vyžaduje sa, aby sa pri vyvíjaní streamingových aplikácií v Unixe písal mapovací a redukčný kód, zatiaľ čo vykonávanie tej istej práce pomocou aplikácie Java MapReduce je zložitejšie a je potrebné ju najprv skompilovať, potom otestovať, potom zabaliť, potom exportovať súbor JAR a potom spustiť.

4. Rýchlejšia konverzia

Konverzia údajov z jedného formátu do druhého pomocou streamu Hadoop trvá veľmi málo času. Môžeme ich použiť na konverziu údajov z textového súboru do sekvenčného súboru a potom znova zo sekvenčného súboru do textového súboru a mnohých ďalších. To sa dá dosiahnuť použitím vstupného formátu a možností výstupného formátu v streame Hadoop.

5. Testovanie

Vstupné a výstupné údaje možno rýchlo otestovať pomocou streamovania Hadoop pomocou Unixu alebo Shell Scriptu.

6. Požiadavka na podnikanie

Pre jednoduché obchodné požiadavky, ako sú jednoduché operácie filtrovania a jednoduché operácie agregácie, to môžeme použiť v systéme Unix.

7. Výkon

Použitím streamu Hadoop môžeme dosiahnuť lepší výkon pri práci so streamingovými dátami. Existuje tiež niekoľko nevýhod streamovania Hadoop, ktoré sa riešia použitím iných nástrojov v balíku Hadoop, ako je Kafka, flume, iskra.

Prečo potrebujeme Hadoop Streaming?

Pomáha pri analýze údajov v reálnom čase, ktorá je omnoho rýchlejšia pomocou programovania MapReduce bežiaceho na klastri viacerých uzlov. Existujú rôzne technológie ako iskra Kafka a ďalšie, ktoré v reálnom čase pomáhajú streamovať pomocou Hadoopu.

Ako vám táto technológia pomôže v kariérnom raste?

V súčasnosti sa všetky veľké podniky sťahujú do spoločnosti Hadoop kvôli analýze údajov a mnohé z nich môžu vyžadovať analýzu údajov v reálnom čase. Dopyt po použití údajov v reálnom čase a ich spracovanie v ten istý deň a túto technológiu vytvára veľa priestoru pre individuálny kariérny rast.

záver

Ponúka obrovské množstvo výhod pre rôzne spracovanie údajov v reálnom čase pomocou streamovaných údajov.

Odporúčané články

Toto je sprievodca Hadoop Streamingom. Tu diskutujeme definíciu, koncepciu, výhody a nevýhody Hadoop Streamingu. Viac informácií nájdete aj v ďalších navrhovaných článkoch.

  1. Čo je Hadoop Cluster?
  2. Čo je dolovanie dát?
  3. Čo je to vizualizácia dát
  4. Čo je to modelovanie údajov?
  5. Kompletný sprievodca nástrojmi Kafka

Kategórie: