Topp 60 Hadoop & MapReduce intervjufrågor & Svar

Anonim

Ladda ner PDF

Följande är vanliga frågor i intervjuer för nybörjare och erfarna utvecklare.

1) Vad är Hadoop Map Reduce?

För att bearbeta stora datamängder parallellt över ett Hadoop-kluster används Hadoop MapReduce-ramverk. Dataanalys använder en tvåstegskarta och reducerar processen.

2) Hur fungerar Hadoop MapReduce?

I MapReduce, under kartfasen, räknar den orden i varje dokument, medan det i reduceringsfasen sammanställer data enligt dokumentet som spänner över hela samlingen. Under kartfasen delas indata i delningar för analys av kartuppgifter som körs parallellt över Hadoop-ramverket.

3) Förklara vad som blandas i MapReduce?

Processen genom vilken systemet utför sorteringen och överför kartutgångarna till reduceraren som ingångar kallas blandningen

4) Förklara vad distribueras Cache i MapReduce Framework?

Distribuerad cache är en viktig funktion som tillhandahålls av MapReduce-ramverket. När du vill dela några filer över alla noder i Hadoop Cluster används Distribuerad cache. Filerna kan vara körbara jar-filer eller enkla egenskaper.

5) Förklara vad som är NameNode i Hadoop?

NameNode i Hadoop är noden, där Hadoop lagrar all filplatsinformation i HDFS (Hadoop Distribuerat filsystem). Med andra ord är NameNode mittpunkten i ett HDFS-filsystem. Det registrerar alla filer i filsystemet och spårar fildata över klustret eller flera datorer

6) Förklara vad som är JobTracker i Hadoop? Vilka är de åtgärder som Hadoop följer?

I Hadoop för att skicka och spåra MapReduce-jobb används JobTracker. Jobbspårare körs på sin egen JVM-process

Job Tracker utför följande åtgärder i Hadoop

  • Kundansökan skickar jobb till jobbspåraren
  • JobTracker kommunicerar till Namn-läget för att bestämma dataläget
  • Nära data eller med tillgängliga platser JobTracker lokaliserar TaskTracker-noder
  • På valda TaskTracker-noder skickar den in arbetet
  • När en uppgift misslyckas meddelar jobbspåraren och bestämmer vad som ska göras då.
  • TaskTracker-noder övervakas av JobTracker

7) Förklara vad som är hjärtslag i HDFS?

Hjärtslag hänvisas till en signal som används mellan en datanod och Namnod och mellan uppgiftsspårare och jobbspårare, om Namnoden eller jobbspåraren inte svarar på signalen, anses det att det finns vissa problem med datanoden eller uppgiften spårare

8) Förklara vad kombinerare är och när du ska använda en kombinerare i ett MapReduce-jobb?

För att öka effektiviteten i MapReduce-programmet används kombinationer. Mängden data kan minskas med hjälp av kombinerare som behöver överföras till reduceringarna. Om den utförda åtgärden är kommutativ och associerande kan du använda din reduceringskod som en kombinerare. Körningen av combiner garanteras inte i Hadoop

9) Vad händer när en datanod misslyckas?

När en datanod misslyckas

  • Jobtracker och namenode upptäcker felet
  • På den misslyckade noden omplaneras alla uppgifter
  • Namenode replikerar användarens data till en annan nod

10) Förklara vad som är spekulativ utförande?

I Hadoop under spekulativ körning lanseras ett visst antal dubbletter. På en annan slavnod kan flera kopior av samma karta eller reducera uppgift köras med hjälp av spekulativ körning. Med enkla ord, om en viss enhet tar lång tid att slutföra en uppgift kommer Hadoop att skapa en duplicerad uppgift på en annan disk. En disk som avslutar uppgiften först behålls och diskar som inte avslutas först dödas.

11) Förklara vilka grundläggande parametrar för en mappare?

De grundläggande parametrarna för en mappare är

  • Långskrivbar och text
  • Text och IntWritable

12) Förklara vad som är funktionen för MapReduce partitioner?

Funktionen för MapReduce partitioner är att se till att hela värdet på en enda nyckel går till samma reducerare, så småningom vilket hjälper till att jämna fördelningen av kartutmatningen över reduceringarna

13) Förklara vad som är skillnaden mellan ett ingångssplit och HDFS-block?

Den logiska uppdelningen av data kallas Split medan en fysisk uppdelning av data kallas HDFS Block

14) Förklara vad som händer i textformat?

I textinmatningsformat är varje rad i textfilen en post. Värde är linjens innehåll medan Key är bytesförskjutningen för linjen. Till exempel Key: longWritable, Value: text

15) Nämn vilka huvudkonfigurationsparametrar som användaren behöver ange för att köra MapReduce Job?

Användaren av MapReduce-ramverket måste ange

  • Jobbs inmatningsplatser i det distribuerade filsystemet
  • Jobbs utgångsplats i det distribuerade filsystemet
  • Inmatningsformat
  • Utmatningsformat
  • Klass som innehåller kartfunktionen
  • Klass som innehåller reduceringsfunktionen
  • JAR-fil som innehåller klasserna mapper, reducerare och drivrutiner

16) Förklara vad som är WebDAV i Hadoop?

För att stödja redigering och uppdatering av filer är WebDAV en uppsättning tillägg till HTTP. På de flesta operativsystem kan WebDAV-aktier monteras som filsystem, så det är möjligt att komma åt HDFS som ett standardfilsystem genom att exponera HDFS över WebDAV.

17) Förklara vad som är Sqoop i Hadoop?

För att överföra data mellan Relational database management (RDBMS) och Hadoop HDFS används ett verktyg som kallas Sqoop. Användning av Sqoop-data kan överföras från RDMS som MySQL eller Oracle till HDFS samt exportera data från HDFS-fil till RDBMS

18) Förklara hur JobTracker schemalägger en uppgift?

Aktivitetsspåraren skickar ut hjärtslagsmeddelanden till Jobtracker vanligtvis med några minuters mellanrum för att se till att JobTracker är aktiv och fungerar. Meddelandet informerar också JobTracker om antalet tillgängliga platser, så JobTracker kan hålla sig uppdaterad med vilken klusterarbetet kan delegeras

19) Förklara vad som är Sequencefileinputformat?

Sequencefileinputformat används för att läsa filer i sekvens. Det är ett specifikt komprimerat binärt filformat som är optimerat för att skicka data mellan utdata från ett MapReduce-jobb till ingången till något annat MapReduce-jobb.

20) Förklara vad gör conf.setMapper Class?

Conf.setMapperclass ställer in mapparklassen och alla saker relaterade till kartjobb som att läsa data och generera ett nyckel-värdepar från mapparen

21) Förklara vad som är Hadoop?

Det är ett programvara med öppen källkod för lagring av data och körning av applikationer på kluster av råvaruhårdvara. Det ger enorm processorkraft och massiv lagring för alla typer av data.

22) Nämn vad är skillnaden mellan en RDBMS och Hadoop?

RDBMS Hadoop
RDBMS är ett relationsdatabashanteringssystem Hadoop är en nodbaserad platt struktur
Den används för OLTP-bearbetning medan Hadoop Den används för närvarande för analys och för BIG DATA-bearbetning
I RDBMS använder databaskluster samma datafiler som lagras i en delad lagring I Hadoop kan lagringsdata lagras oberoende i varje bearbetningsnod.
Du måste förbehandla data innan du lagrar den du behöver inte förbehandla data innan du lagrar den

23) Nämn Hadoop-kärnkomponenter?

Hadoop-kärnkomponenter inkluderar,

  • HDFS
  • MapReduce

24) Vad är NameNode i Hadoop?

NameNode i Hadoop är där Hadoop lagrar all filplatsinformation i HDFS. Det är masternoden som jobbspåraren körs på och består av metadata.

25) Nämn vilka datakomponenter som används av Hadoop?

Datakomponenter som används av Hadoop är

  • Gris
  • Bikupa

26) Nämn vad är datalagringskomponenten som används av Hadoop?

Datalagringskomponenten som används av Hadoop är HBase.

27) Nämn vilka är de vanligaste ingångsformaten definierade i Hadoop?

De vanligaste ingångsformaten definierade i Hadoop är;

  • TextInputFormat
  • KeyValueInputFormat
  • SequenceFileInputFormat

28) Vad är InputSplit i Hadoop?

Den delar inmatningsfiler i bitar och tilldelar varje delning till en mapper för bearbetning.

29) För ett Hadoop-jobb, hur ska du skriva en anpassad partitioner?

Du skriver en anpassad partitioner för ett Hadoop-jobb, du följer följande väg

  • Skapa en ny klass som utökar Partitioner Class
  • Åsidosätt metoden getPartition
  • I omslaget som kör MapReduce
  • Lägg till den anpassade partitioneraren till jobbet med hjälp av metoduppsättningen Partitioner Class eller - lägg till den anpassade partitioneraren till jobbet som en konfigurationsfil

30) Är det möjligt att ändra antalet kartläggare som ska skapas för ett jobb i Hadoop?

Nej, det är inte möjligt att ändra antalet mappar som ska skapas. Antalet mappar bestäms av antalet ingångsdelningar.

31) Förklara vad som är en sekvensfil i Hadoop?

För att lagra binära nyckel / värdepar används sekvensfil. Till skillnad från vanlig komprimerad fil stöder sekvensfil delning även när data i filen komprimeras.

32) Vad händer med jobbspåraren när Namenode är nere?

Namenode är den enda felpunkten i HDFS, så när Namenode är nere kommer ditt kluster att sätta igång.

33) Förklara hur indexering i HDFS görs?

Hadoop har ett unikt sätt att indexera. När data väl har lagrats enligt blockstorleken kommer HDFS att fortsätta lagra den sista delen av data som säger var nästa del av data kommer att finnas.

34) Förklara är det möjligt att söka efter filer med jokertecken?

Ja, det är möjligt att söka efter filer med jokertecken.

35) Lista ut Hadoops tre konfigurationsfiler?

De tre konfigurationsfilerna är

  • core-site.xml
  • mapred-site.xml
  • hdfs-site.xml

36) Förklara hur kan du kontrollera om Namenode fungerar bredvid med kommandot jps?

Förutom att använda kommandot jps kan du också använda om du vill kontrollera om Namenode fungerar

/etc/init.d/hadoop-0.20-namenode status.

37) Förklara vad som är "karta" och vad är "reducerare" i Hadoop?

I Hadoop är en karta en fas i HDFS-frågelösning. En karta läser data från en ingångsplats och matar ut ett nyckelvärdepar enligt ingångstypen.

I Hadoop samlar en reducerare utdata som genereras av mapparen, bearbetar den och skapar en egen slutlig utgång.

38) I Hadoop, vilken fil styr rapporteringen i Hadoop?

I Hadoop styr Hadoop-metrics.properties-filen rapporteringen.

39) För att använda Hadoop listar du nätverkskraven?

För att använda Hadoop är listan över nätverkskrav:

  • Lösenordsfri SSH-anslutning
  • Secure Shell (SSH) för att starta serverprocesser

40) Nämn vad är rackmedvetenhet?

Rackmedvetenhet är det sätt på vilket namenoden bestämmer hur block ska placeras baserat på rackdefinitionerna.

41) Förklara vad som är en aktivitetsspårare i Hadoop?

En aktivitetsspårare i Hadoop är en slavnodemon i klustret som accepterar uppgifter från en JobTracker. Den skickar också hjärtslagsmeddelandena till JobTracker, med några minuters mellanrum, för att bekräfta att JobTracker fortfarande lever.

42) Nämn vilka demoner som körs på en masternod och slavnoder?

  • Daemons som körs på huvudnoden är "NameNode"
  • Daemons som körs på varje slavnod är "Task Tracker" och "Data"

43) Förklara hur du kan felsöka Hadoop-kod?

De populära metoderna för felsökning av Hadoop-kod är:

  • Genom att använda webbgränssnitt från Hadoop framework
  • Genom att använda Counters

44) Förklara vad som är lagrings- och beräkningsnoder?

  • Lagringsnoden är den maskin eller dator där ditt filsystem finns för att lagra behandlingsdata
  • Beräkningsnoden är den dator eller maskin där din faktiska affärslogik kommer att köras.

45) Nämn vad används Context Object?

Kontextobjektet gör det möjligt för mapparen att interagera med resten av Hadoop

systemet. Den innehåller konfigurationsdata för jobbet samt gränssnitt som gör att den kan sända utdata.

46) Nämn vad är nästa steg efter Mapper eller MapTask?

Nästa steg efter Mapper eller MapTask är att utdata från Mapper sorteras och partitioner skapas för utdata.

47) Nämn vad är antalet standardpartitioner i Hadoop?

I Hadoop är standardpartitioneraren en "Hash" -partitionerare.

48) Förklara vad är syftet med RecordReader i Hadoop?

I Hadoop laddar RecordReader data från sin källa och konverterar den till (nyckel, värde) par som är lämpliga för läsning av mapparen.

49) Förklara hur partitioneras data innan det skickas till reduceraren om ingen anpassad partitioner har definierats i Hadoop?

Om ingen anpassad partitioner är definierad i Hadoop beräknar en standardpartitioner ett hash-värde för nyckeln och tilldelar partitionen baserat på resultatet.

50) Förklara vad som händer när Hadoop skapade 50 uppgifter för ett jobb och en av uppgiften misslyckades?

Det startar om uppgiften igen på någon annan TaskTracker om uppgiften misslyckas mer än den definierade gränsen.

51) Nämn vad är det bästa sättet att kopiera filer mellan HDFS-kluster?

Det bästa sättet att kopiera filer mellan HDFS-kluster är att använda flera noder och distcp-kommandot, så arbetsbelastningen delas.

52) Nämn vad är skillnaden mellan HDFS och NAS?

HDFS-datablock distribueras över lokala enheter på alla maskiner i ett kluster medan NAS-data lagras på dedikerad hårdvara.

53) Nämn hur Hadoop skiljer sig från andra databehandlingsverktyg?

I Hadoop kan du öka eller minska antalet kartläggare utan att oroa dig för datamängden som ska bearbetas.

54) Nämn vilket jobb gör conf-klassen?

Jobbkonfektklass separerar olika jobb som körs i samma kluster. Det gör inställningarna för jobbnivå som att deklarera ett jobb i en verklig miljö.

55) Nämn vad är Hadoop MapReduce API: s kontrakt för en nyckel- och värdeklass?

För en nyckel- och värdeklass finns det två Hadoop MapReduce API-kontrakt

  • Värdet måste definiera det gränssnittet org.apache.hadoop.io.Writable
  • Nyckeln måste definiera gränssnittet org.apache.hadoop.io.WritableComparable

56) Nämn vilka tre lägen där Hadoop kan köras?

De tre lägena där Hadoop kan köras är

  • Pseudodistribuerat läge
  • Fristående läge (lokalt)
  • Fullt distribuerat läge

57) Nämn vad gör textinmatningsformatet?

Textinmatningsformatet skapar ett radobjekt som är ett hexadecimalt tal. Värdet betraktas som en hel radstext medan nyckeln betraktas som ett radobjekt. Kartläggaren får värdet som "text" -parameter medan nyckeln är som "långskrivbar" -parameter.

58) Nämn hur många InputSplits som gjorts av Hadoop Framework?

Hadoop kommer att göra 5 delningar

  • 1 delning för 64K-filer
  • 2 delas för 65 MB-filer
  • 2 delar för 127 MB-filer

59) Nämn vad är distribuerat cache i Hadoop?

Distribuerat cache i Hadoop är en anläggning som tillhandahålls av MapReduce framework. När jobbet utförs används det för att cache-filen. Framework kopierar de nödvändiga filerna till slavnoden innan någon uppgift utförs vid den noden.

60) Förklara hur Hadoop Classpath spelar en viktig roll för att stoppa eller starta i Hadoop-demoner?

Classpath består av en lista med kataloger som innehåller jar-filer för att stoppa eller starta demoner.