Mi az a Hadoop streaming?

A Hadoop streaming a Hadoop disztribúcióval járó segédprogram, amely felhasználható a nagy adatok elemzésére szolgáló programok végrehajtására. Számos nyelv használható, például Java, Scala, Unix, Perl, Python és még sok más. A segédprogram segítséget nyújt a térkép létrehozásában és futtatásában a munkahelyek csökkentésében, ha minden futtatható vagy szkript leképező és / vagy reduktor.

Meghatározás

Ez egy Hadoop disztribúció segédprogrammal. A segédprogram segít konkrét MapReduce feladatok létrehozásában és futtatásában egy futtatható fájl vagy a szkript segítségével, mint mapper és / vagy reduktor.

Megértés

Vannak java segédprogramok, amelyeket a Hadoop disztribúció biztosít, és amelyeket Hadoop streamingnek hívnak. A segédprogram egy JAR fájlba van csomagolva. A segédprogram segítségével létrehozhatunk és futtathatunk MapReduce feladatokat egy futtatható szkripttel. Ezen felül létrehozhatunk futtatható szkripteket a térképkészítő és redukáló funkciók futtatásához. A futtatható parancsfájlokat parancs segítségével továbbítják a Hadoop streamingre. Miután a szkripteket továbbították a Hadoop streamingre, a Hadoop streaming segédprogram létrehoz egy térképet, és csökkenti a feladatokat, és elküldi azokat a fürtbe. Ezeket a feladatokat ezzel a segédprogrammal is meg lehet figyelni.

Hogyan működik?

A térképező és reduktor számára megadott szkript az alábbiak szerint működik -

A mapper parancsfájl teljes inicializálása után elindítja a parancsfájl példányát különböző folyamat-azonosítókkal. A térképező feladat futás közben a bemeneti vonalakat veszi át, és továbbítja a normál bemenethez. Ugyanakkor a mapper összegyűjti a folyamat standard kimenetét. Mindegyik sort konvertálja kulcs-értékpárba. A kulcs-érték párok halmazát ezután a mapper kimeneteként gyűjtik. A kulcs értékpárt az első lap karakter alapján választják ki. A sornak a kezdeti fülig tartó részét választjuk kulcsként, míg a sor többi részét értékes elemként választjuk ki. Ha a fül nem található egy sorban, akkor a teljes sort kell kiválasztani kulcsként, és a sornak nincs értékrésze. Ezt az üzleti igényeknek megfelelően lehet beállítani.

A Hadoop streaming használatának célja

Valós idejű adatgyűjtésre szolgál, amely különböző valósidejű alkalmazásokban használható. Különböző valós idejű alkalmazások léteznek, például részvényportfóliók megtekintése, részvénypiaci elemzés, időjárási jelentések elbeszélése, forgalmi riasztások, amelyeket a Hadoop streaming segítségével készítenek.

A Hadoop streaming működése

Az alábbiakban bemutatunk egy egyszerű példát a Hadoop streaming működésére:

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

Az input parancs szolgál a bemeneti könyvtár biztosítására, míg a output parancs a output könyvtár biztosítására szolgál. A leképező parancs a végrehajtható leképező osztály meghatározására szolgál, míg a redukáló parancs a végrehajtható reduktor osztály meghatározására szolgál.

A Hadoop streaming előnyei

Az alábbiakban bemutatjuk a Hadoop streaming előnyeit:

1. Rendelkezésre állás

Ehhez nincs szükség külön külön szoftver telepítésére és kezelésére. Vannak más eszközök, mint például a sertés, a kaptár, amelyeket be lehet telepíteni. Külön kezelni kell őket.

2. Tanulás

Nem igényel új technológiákat. A Hadoop streaming minimális Unix ismeretekkel képes az adatok elemzésére.

3. Csökkentse a fejlesztési időt

A térképkészítő és redukciós kódok írását megköveteli a streaming alkalmazások Unix-ban történő fejlesztése közben, ugyanakkor a Java MapReduce alkalmazás használatával ugyanaz a munka elvégzése összetettebb, és először össze kell állítani, majd tesztelni, majd csomagolni, majd a JAR fájlt exportálni, majd futtatni.

4. Gyorsabb átalakítás

Nagyon kevés idő vesz igénybe az adatok átalakítása egyik formátumból a másikba a Hadoop streaming segítségével. Használhatjuk az adatok konvertálásához szöveges fájlból szekvencia fájlba, majd ismét szekvencia fájlból szöveges fájlba és még sokan másokra. Ezt a Hadoop streaming bemeneti formátum és kimeneti formátum opciókkal lehet elérni.

5. Tesztelés

A bemeneti és kimeneti adatok gyorsan tesztelhetők a Hadoop streaming használatával, Unix vagy Shell Script segítségével.

6. Követelmény az üzleti élet számára

Az egyszerű üzleti igényekhez, például az egyszerű szűrési műveletekhez és az egyszerű aggregálási műveletekhez, ezt a Unix-szal is felhasználhatjuk.

7. Teljesítmény

A Hadoop streaming használatával jobb teljesítményt érhetünk el az adatfolyam-feldolgozás során. A Hadoop streamingnek számos hátránya is van, amelyekkel a Hadoop csomag egyéb eszközeivel, például a Kafka, a flume, a szikra segítségével oldódnak meg.

Miért van szükségünk a Hadoop streamingre?

Segít a valós idejű adatok elemzésében, amely sokkal gyorsabb, többcsomópontú fürtön futó MapReduce programozással. Különböző technológiák léteznek, például a Kafka szikra és mások, amelyek valós időben segítenek a Hadoop streamingben.

Hogyan segít ez a technológia a karrier növekedésében?

Manapság minden nagyobb vállalkozás a Hadoop-ba költözött adatok elemzésére, és sokuknak szüksége lehet valósidejű adatok elemzésére. A valós idejű adatok felhasználásának és az ugyanazon napi feldolgozás igénye és ez a technológia sok teret teremt az egyéni karrier növekedéshez.

Következtetés

Hatalmas előnyt kínál a valósidejű adatfolyam-adatfeldolgozással történő különböző feldolgozáshoz.

Ajánlott cikkek

Ez egy útmutató a Hadoop streaminghez. Itt a Hadoop streaming meghatározását, fogalmát, előnyeit és hátrányait tárgyaljuk. Megnézheti a többi javasolt cikket is, hogy többet megtudjon-

  1. Mi a Hadoop Cluster?
  2. Mi az adatbányászat?
  3. Mi az adatmegjelenítés?
  4. Mi az adatmodellezés?
  5. Teljes útmutató a Kafka Tools-hoz

Kategória: