Vad är Hadoop Streaming?

Hadoop-streaming är ett verktyg som levereras med Hadoop-distribution som kan användas för att köra program för analys av big data. Det finns flera språk som kan användas för att utföra detta som Java, Scala, Unix, Perl, Python och många fler. Verktyget hjälper oss att skapa och köra kartor för att minska jobb med alla körbara eller skript som mapper och / eller reducerare.

Definition

Det är en Hadoop-distribution med verktyg. Verktyget hjälper oss att skapa och köra specifika MapReduce-jobb med en körbar eller skriptet som mapper och / eller reducerare.

Förståelse

Det finns java-verktyg som tillhandahålls av Hadoop-distributionen som kallas Hadoop-strömning. Verktyget är paketerat i en JAR-fil. Med hjälp av verktyget kan vi skapa och köra MapReduce-jobb med ett körbart skript. Dessutom kan vi skapa körbara skript för att köra mapper- och reduceringsfunktioner. De körbara skripten skickas till Hadoop-strömning med ett kommando. När skripten har skickats till Hadoop-strömning skapar Hadoop-strömningsverktyget en karta och minskar jobb och skickar dem till klustret. Dessa jobb kan också övervakas med detta verktyg.

Hur fungerar det?

Skriptet som anges för mapper och reducer fungerar enligt nedan-

Efter fullständig initiering av mapper-skriptet kommer det att starta instansen av skriptet med olika process-id. Kartläggningsuppgiften under körning tar inmatningslinjerna och överför den till standardinmatningen. Samtidigt samlas in utgångarna från processens standardutgång av mapparen. Den konverterar varje rad till ett nyckelvärdespar. Uppsättningen av nyckelvärdespar samlas sedan in som utgång från mapparen. Nyckelvärdsparet väljs baserat på det första tabbtecknet. Den del av linjen upp till den första fliken väljs som nyckel medan resten av linjen väljs som en värdefull del. I det fall fliken inte finns i en rad väljs den totala raden som nyckel och det finns ingen värdedel för linjen. Detta kan justeras efter affärsbehov.

Syfte att använda Hadoop Streaming

Det används för intag av data i realtid som kan användas i olika realtidsappar. Det finns olika appar i realtid som att titta på aktieportföljer, marknadsanalys, berätta väderrapport, trafikvarningar som görs med Hadoop-strömning.

Arbetar med Hadoop Streaming

Nedan följer ett enkelt exempel på hur Hadoop-streaming fungerar:

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

Inputkommandot används för att tillhandahålla inmatningskatalogen medan utdatakommandot används för att tillhandahålla utmatningskatalogen. Mapper-kommandot används för att specificera den körbara mapper-klassen medan reducer-kommandot används för att specificera den körbara reducerarklassen.

Fördelar med Hadoop Streaming

Nedan är fördelarna med Hadoop-streaming:

1. Tillgänglighet

Detta kräver ingen extra separat programvara för att installeras och hanteras. Det finns andra verktyg som en gris, bikupa som kan installeras. Jag behöver hanteras separat.

2. Lärande

Det kräver inte att lära sig ny teknik. Hadoop-strömning kan utnyttjas med minsta Unix-färdighet för dataanalys.

3. Minska utvecklingstiden

Det kräver att skriva mapper och reduceringskod medan du utvecklar strömningsapplikationer i Unix medan samma arbete med Java MapReduce-applikation är mer komplicerat och måste först kompileras, sedan testa, sedan paket, följt av exportera JAR-fil och sedan köra.

4. Snabbare konvertering

Det tar väldigt lite tid att konvertera data från ett format till ett annat med Hadoop-strömning. Vi kan använda den för att konvertera data från textfil till sekvensfil och sedan igen från sekvensfil till textfil och många andra. Detta kan uppnås med hjälp av inmatningsformat och utgångsformatalternativ i Hadoop-strömning.

5. Testning

In- och utgångsdata kan testas snabbt med hjälp av Hadoop-strömning med Unix eller Shell Script.

6. Krav på företag

För enkla affärskrav som enkla filteroperationer och enkel aggregeringsoperation kan vi använda detta med Unix.

7. Prestanda

Med Hadoop-strömning kan vi få bättre prestanda när vi arbetar med strömningsdata. Det finns också flera nackdelar med Hadoop-strömning som hanteras genom att använda andra verktyg i Hadoop-paketet som Kafka, flume, spark.

Varför behöver vi Hadoop Streaming?

Det hjälper till i realtidsdataanalys som är mycket snabbare med MapReduce-programmering som körs på ett kluster med flera noder. Det finns olika teknologier som spark Kafka och andra som hjälper i realtid Hadoop-strömning.

Hur denna teknik kommer att hjälpa dig i karriärtillväxt?

Numera flyttar alla större företag till Hadoop för sin dataanalys och många av dem kan kräva analys av realtidsdata. Efterfrågan på användning av realtidsdata och behandling av samma dag för dag och denna teknik skapar mycket utrymme för individuell karriärtillväxt.

Slutsats

Det erbjuder ett stort utbud av fördelar för olika databaser i realtid med strömningsdata.

Rekommenderade artiklar

Detta är en guide till Hadoop Streaming. Här diskuterar vi definitionen, konceptet, fördelarna och nackdelarna med Hadoop Streaming. Du kan också gå igenom våra andra föreslagna artiklar för att lära dig mer-

  1. Vad är Hadoop Cluster?
  2. Vad är dataanläggning?
  3. Vad är datavisualisering
  4. Vad är datamodellering?
  5. Komplett guide till Kafka-verktyg

Kategori: