Vairāk nekā 30 Hadoop intervijas jautājumi un atbildes

Forbes statistika liecina, ka līdz pat 90% pasaules organizāciju izmanto lielo datu analīzi, lai izveidotu ieguldījumu pārskatus.

Pieaugot lielo datu popularitātei, Hadoop darba iespējas pieaug vairāk nekā iepriekš.

Tāpēc, lai palīdzētu jums iegūt šo Hadoop eksperta lomu, varat izmantot šos intervijas jautājumus un atbildes, kuras esam apkopojuši šajā rakstā, lai palīdzētu jums pabeigt interviju.

Varbūt, zinot tādus faktus kā algu diapazons, kas padara Hadoop un Big Data lomas ienesīgas, jūs motivēsit nokārtot šo interviju, vai ne? 🤔

  • Saskaņā ar indeed.com, ASV bāzēta Big Data Hadoop izstrādātāja vidējā alga ir 144 000 USD.
  • Saskaņā ar itjobswatch.co.uk datiem Big Data Hadoop izstrādātāja vidējā alga ir 66 750 GBP.
  • Indijā vietne indeed.com norāda, ka viņi nopelnītu vidējo algu 16 00 000 Indijas rūpiju apmērā.

Ienesīgs, vai ne? Tagad iesim, lai uzzinātu par Hadoop.

Kas ir Hadoop?

Hadoop ir populārs Java ietvars, kas izmanto programmēšanas modeļus, lai apstrādātu, uzglabātu un analizētu lielas datu kopas.

Pēc noklusējuma tā dizains ļauj mērogot no atsevišķiem serveriem uz vairākām iekārtām, kas piedāvā lokālu aprēķinu un krātuvi. Turklāt tā spēja atklāt un apstrādāt lietojumprogrammas slāņa kļūmes, kuru rezultātā tiek nodrošināti ļoti pieejami pakalpojumi, padara Hadoop diezgan uzticamu.

Pāriesim tieši uz bieži uzdotajiem Hadoop intervijas jautājumiem un pareizajām atbildēm uz tiem.

Hadoop intervijas jautājumi un atbildes

Kas ir Hadoop krātuves vienība?

Atbilde: Hadoop krātuves vienību sauc par Hadoop izplatīto failu sistēmu (HDFS).

Kā tīklam pievienotā krātuve atšķiras no Hadoop izplatītās failu sistēmas?

Atbilde: HDFS, kas ir Hadoop galvenā krātuve, ir izplatīta failu sistēma, kas glabā lielus failus, izmantojot preču aparatūru. No otras puses, NAS ir failu līmeņa datora datu uzglabāšanas serveris, kas nodrošina piekļuvi datiem neviendabīgām klientu grupām.

Kamēr datu glabāšana NAS ir speciālā aparatūrā, HDFS izplata datu blokus visās Hadoop klastera mašīnās.

NAS izmanto augstas klases atmiņas ierīces, kas ir diezgan dārgas, savukārt HDFS izmantotā aparatūra ir rentabla.

NAS atsevišķi saglabā datus no aprēķiniem, tādējādi padarot tos nepiemērotus MapReduce. Gluži pretēji, HDFS dizains ļauj tam strādāt ar MapReduce sistēmu. Aprēķini tiek pārvietoti uz datiem MapReduce sistēmā, nevis uz aprēķiniem.

Izskaidrojiet MapReduce, izmantojot Hadoop un Shuffling

Atbilde: MapReduce attiecas uz diviem atšķirīgiem uzdevumiem, ko veic Hadoop programmas, lai nodrošinātu lielu mērogojamību simtiem līdz tūkstošiem serveru Hadoop klasterī. No otras puses, jaukšana pārsūta kartes izvadi no Mappers uz nepieciešamo reduktoru programmā MapReduce.

Sniedziet ieskatu Apache Pig arhitektūrā

Apache cūku arhitektūra

Atbilde: Apache Pig arhitektūrai ir Pig Latin tulks, kas apstrādā un analizē lielas datu kopas, izmantojot Pig Latin skriptus.

  Kā noņemt sevi no Dropbox grupas

Apache pig sastāv arī no datu kopu kopām, kurās tiek veiktas datu darbības, piemēram, pievienošanās, ielāde, filtrēšana, kārtošana un grupēšana.

Pig latīņu valoda izmanto izpildes mehānismus, piemēram, Grant čaulas, UDF un iegultos Pig skriptu rakstīšanai, kas veic nepieciešamos uzdevumus.

Pig atvieglo programmētāju darbu, pārvēršot šos rakstītos skriptus Map-Reduce darbu sērijās.

Apache Pig arhitektūras komponenti ietver:

  • Parsētājs — tas apstrādā Pig skriptus, pārbaudot skripta sintaksi un veicot tipa pārbaudi. Parsētāja izvade attēlo Pig Latin paziņojumus un loģiskos operatorus, un to sauc par DAG (virzīto aciklisko grafiku).
  • Optimizētājs — optimizētājs ievieš loģisku optimizāciju, piemēram, projekciju un nospiešanu uz DAG.
  • Kompilators — apkopo optimizēto loģisko plānu no optimizētāja MapReduce darbu sērijā.
  • Izpildes programma — šeit notiek MapReduce darbu galīgā izpilde vēlamajā izvadē.
  • Izpildes režīms — Apache pig izpildes režīmi galvenokārt ietver vietējo un Map Reduce.

Atbilde: Metastore pakalpojums pakalpojumā Local Metastore darbojas tajā pašā JVM kā Hive, bet tiek izveidots savienojums ar datu bāzi, kas darbojas atsevišķā procesā tajā pašā vai attālā mašīnā. No otras puses, attālajā metastorā esošais Metastore darbojas savā JVM atsevišķi no Hive pakalpojuma JVM.

Kas ir lielo datu pieci V?

Atbilde: šie pieci V apzīmē lielo datu galvenos raksturlielumus. Tajos ietilpst:

  • Vērtība: lielo datu mērķis ir nodrošināt ievērojamus ieguvumus no augstas ieguldījumu atdeves (IA) organizācijai, kas savās datu operācijās izmanto lielos datus. Lielie dati sniedz šo vērtību no ieskatu atklāšanas un modeļu atpazīšanas, kā rezultātā tiek uzlabotas attiecības ar klientiem un efektīvākas darbības, kā arī citas priekšrocības.
  • Daudzveidība: tas atspoguļo apkopoto datu tipu neviendabīgumu. Dažādos formātos ietilpst CSV, video, audio utt.
  • Apjoms: tas nosaka ievērojamo datu apjomu un lielumu, ko pārvalda un analizē organizācija. Šie dati atspoguļo eksponenciālu izaugsmi.
  • Ātrums: šis ir eksponenciālais datu pieauguma ātruma ātrums.
  • Pareizība: patiesums attiecas uz to, cik “neskaidri” vai “neprecīzi” dati ir pieejami, jo dati ir nepilnīgi vai nekonsekventi.

Izskaidrojiet dažādus cūku latīņu valodas datu veidus.

Atbilde: datu tipi cūku latīņu valodā ietver atomu datu tipus un sarežģītus datu tipus.

Atomic datu tipi ir pamata datu tipi, ko izmanto visās citās valodās. Tie ietver:

  • Int — šis datu tips definē 32 bitu veselu skaitli ar parakstu. Piemērs: 13
  • Long — Long definē 64 bitu veselu skaitli. Piemērs: 10L
  • Float — definē 32 bitu peldošo punktu ar parakstu. Piemērs: 2.5F
  • Double — definē parakstītu 64 bitu peldošo punktu. Piemērs: 23.4
  • Būla vērtība — definē Būla vērtību. Tas ietver: patiess/nepatiess
  • Datetime — definē datuma un laika vērtību. Piemērs: 1980-01-01T00:00.00.000+00:00

Sarežģītie datu veidi ietver:

  • Karte — karte attiecas uz atslēgu-vērtību pāru kopu. Piemērs: [‘color’#’yellow’, ‘number’#3]
  • Soma — tā ir virkņu kopas kolekcija, un tajā tiek izmantots simbols “{}”. Piemērs: {(Henrijs, 32), (Kiti, 47)}
  • Korpuss — kortežs definē sakārtotu lauku kopu. Piemērs: (vecums, 33)

Kas ir Apache Oozie un Apache ZooKeeper?

Atbilde: Apache Oozie ir Hadoop plānotājs, kas atbild par Hadoop darbu plānošanu un saistīšanu kopā kā vienu loģisku darbu.

Savukārt Apache Zookeeper izkliedētā vidē sadarbojas ar dažādiem pakalpojumiem. Tas ietaupa izstrādātāju laiku, vienkārši atklājot vienkāršus pakalpojumus, piemēram, sinhronizāciju, grupēšanu, konfigurācijas apkopi un nosaukumu piešķiršanu. Apache Zookeeper nodrošina arī gatavu atbalstu rindā un līderu ievēlēšanai.

Kāda ir apvienotāja, ierakstu lasītāja un sadalītāja loma MapReduce operācijā?

Atbilde: Kombains darbojas kā mini reduktors. Tas saņem un strādā ar datiem no kartes uzdevumiem un pēc tam nodod datu izvadi reducēšanas fāzei.

RecordHeader sazinās ar InputSplit un pārvērš datus atslēgu-vērtību pāros, lai kartētājs tos varētu pareizi nolasīt.

Sadalītājs ir atbildīgs par samazināto uzdevumu skaita izlemšanu, kas nepieciešams, lai apkopotu datus, un apstiprinātu, kā kombinētāja izvadi tiek nosūtīti uz reduktoru. Sadalītājs kontrolē arī starpkartes izvadu galveno sadalīšanu.

  Kā nomainīt My Sam's Club dalību

Norādiet dažādus Hadoop izplatītājus, kas ir specifiski piegādātājiem.

Atbilde: dažādi pārdevēji, kas paplašina Hadoop iespējas, ietver:

  • IBM atvērtā platforma.
  • Cloudera CDH Hadoop izplatīšana
  • MapR Hadoop izplatīšana
  • Amazon Elastic MapReduce
  • Hortonworks datu platforma (HDP)
  • Pivotal Big Data Suite
  • Datastax Enterprise Analytics
  • Microsoft Azure HDInsight — uz mākoņiem balstīta Hadoop izplatīšana.

Kāpēc HDFS ir izturīgs pret kļūmēm?

Atbilde: HDFS atkārto datus dažādos DataNodes, padarot to izturīgu pret defektiem. Datu glabāšana dažādos mezglos ļauj izgūt no citiem mezgliem, kad viens režīms avarē.

Atšķiriet federāciju un augstu pieejamību.

Atbilde: HDFS federācija piedāvā kļūdu toleranci, kas nodrošina nepārtrauktu datu plūsmu vienā mezglā, kad notiek cita avārija. No otras puses, augstas pieejamības nodrošināšanai būs nepieciešamas divas atsevišķas mašīnas, kas konfigurē aktīvo NameNode un sekundāro NameNode pirmajā un otrajā mašīnā atsevišķi.

Federācijai var būt neierobežots skaits nesaistītu NameNode, savukārt augstā pieejamības režīmā ir pieejami tikai divi saistīti NameNode, aktīvi un gaidīšanas režīmā, kas darbojas nepārtraukti.

NameNodes federācijā koplieto metadatu kopu, un katram NameNode ir savs kopums. Augstas pieejamības režīmā aktīvie NameNodes darbojas katrs pa vienam, kamēr gaidstāves NameNodes paliek dīkstāvē un tikai laiku pa laikam atjaunina savus metadatus.

Kā atrast bloku statusu un failu sistēmas veselību?

Atbilde: Jūs izmantojat komandu hdfs fsck / gan saknes lietotāja līmenī, gan atsevišķā direktorijā, lai pārbaudītu HDFS failu sistēmas veselības stāvokli.

Lietotā HDFS fsck komanda:

hdfs fsck / -files --blocks –locations> dfs-fsck.log

Komandas apraksts:

  • -faili: izdrukājiet failus, kurus pārbaudāt.
  • –locations: pārbaudes laikā izdrukā visu bloku atrašanās vietas.

Komanda, lai pārbaudītu bloku statusu:

hdfs fsck <path> -files -blocks
  • : sāk pārbaudes no šeit ievadītā ceļa.
  • – bloki: pārbaudes laikā tiek drukāti failu bloki

Kad jūs izmantojat komandas rmadmin-refreshNodes un dfsadmin-refreshNodes?

Atbilde: Šīs divas komandas ir noderīgas mezgla informācijas atsvaidzināšanā vai nu nodošanas ekspluatācijā laikā, vai tad, kad mezgla nodošana ekspluatācijā ir pabeigta.

Komanda dfsadmin-refreshNodes palaiž HDFS klientu un atsvaidzina NameNode mezgla konfigurāciju. Savukārt komanda rmadmin-refreshNodes izpilda ResourceManager administratīvos uzdevumus.

Kas ir kontrolpunkts?

Atbilde: Kontrolpunkts ir darbība, kas apvieno failu sistēmas pēdējās izmaiņas ar jaunāko FSImage, lai rediģēšanas žurnālfaili paliktu pietiekami mazi, lai paātrinātu NameNode palaišanas procesu. Kontrolpunkts atrodas sekundārajā NameNode.

Kāpēc mēs izmantojam HDFS lietojumprogrammām, kurām ir lielas datu kopas?

Atbilde: HDFS nodrošina DataNode un NameNode arhitektūru, kas ievieš izplatītu failu sistēmu.

Šīs divas arhitektūras nodrošina augstas veiktspējas piekļuvi datiem, izmantojot ļoti mērogojamus Hadoop klasterus. Tā NameNode saglabā failu sistēmas metadatus RAM, kā rezultātā atmiņas apjoms ierobežo HDFS failu sistēmas failu skaitu.

Ko dara komanda “jps”?

Atbilde: Java virtuālās mašīnas procesa statusa (JPS) komanda pārbauda, ​​vai darbojas konkrēti Hadoop dēmoni, tostarp NodeManager, DataNode, NameNode un ResourceManager. Šī komanda ir jāpalaiž no saknes, lai pārbaudītu resursdatora darbības mezglus.

Kas ir “spekulatīva izpilde” pakalpojumā Hadoop?

Atbilde: Šis ir process, kurā Hadoop galvenais mezgls tā vietā, lai labotu atklātos lēnos uzdevumus, palaiž citu tā paša uzdevuma gadījumu kā rezerves uzdevumu (spekulatīvo uzdevumu) citā mezglā. Spekulatīva izpilde ietaupa daudz laika, īpaši intensīvas darba slodzes apstākļos.

Nosauciet trīs režīmus, kuros var darboties Hadoop.

Atbilde: Trīs primārie mezgli, kuros darbojas Hadoop, ietver:

  • Savrupais mezgls ir noklusējuma režīms, kas palaiž Hadoop pakalpojumus, izmantojot vietējo failu sistēmu un vienu Java procesu.
  • Pseidoizplatītais mezgls izpilda visus Hadoop pakalpojumus, izmantojot vienu Hadoop izvietošanu.
  • Pilnībā izplatīts mezgls palaiž Hadoop galveno un pakārtoto pakalpojumu, izmantojot atsevišķus mezglus.

Kas ir UDF?

Atbilde: UDF (lietotāja definētās funkcijas) ļauj kodēt pielāgotās funkcijas, kuras varat izmantot kolonnu vērtību apstrādei Impala vaicājuma laikā.

Kas ir DistCp?

Atbilde: DistCp vai Distributed Copy, īsi sakot, ir noderīgs rīks datu kopēšanai lielai klasteru savstarpējai vai iekšējai kopēšanai. Izmantojot MapReduce, DistCp efektīvi ievieš liela datu apjoma izplatītu kopiju, kā arī citus uzdevumus, piemēram, kļūdu apstrādi, atkopšanu un ziņošanu.

Atbilde: Hive metastore ir pakalpojums, kas glabā Apache Hive metadatus Hive tabulām relāciju datu bāzē, piemēram, MySQL. Tas nodrošina metastore pakalpojuma API, kas nodrošina centu piekļuvi metadatiem.

Definējiet RDD.

Atbilde: RDD, kas apzīmē elastīgas sadalītās datu kopas, ir Spark datu struktūra un nemainīga sadalīta jūsu datu elementu kolekcija, kas tiek aprēķināta dažādos klasteru mezglos.

Kā vietējās bibliotēkas var iekļaut YARN darbos?

Atbilde: To var ieviest, izmantojot -Djava.library. ceļa opcija komandā vai iestatot LD+LIBRARY_PATH .bashrc failā, izmantojot šādu formātu:

<property>
<name>mapreduce.map.env</name>
<value>LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/my/libs</value>
</property>

Izskaidrojiet “WAL” programmā HBase.

Atbilde: Write Ahead žurnāls (WAL) ir atkopšanas protokols, kas reģistrē MemStore datu izmaiņas HBase faila krātuvē. WAL atkopj šos datus, ja RegionalServer avarē vai pirms MemStore izskalošanas.

Vai YARN aizstāj Hadoop MapReduce?

Atbilde: Nē, YARN nav Hadoop MapReduce aizstājējs. Tā vietā jaudīga tehnoloģija ar nosaukumu Hadoop 2.0 vai MapReduce 2 atbalsta MapReduce.

Kāda ir atšķirība starp ORDER BY un SORT BY HIVE?

Atbilde. Lai gan abas komandas stropā datus ienes kārtotā veidā, rezultātus, kas iegūti, izmantojot SORT BY, var sakārtot tikai daļēji.

Turklāt, lai pasūtītu rindas, SORT BY ir nepieciešams reduktors. Šie reduktori, kas nepieciešami gala izvadei, var būt arī vairāki. Šajā gadījumā gala produkcija var būt daļēji pasūtīta.

No otras puses, ORDER BY ir nepieciešams tikai viens reduktors kopējam produkcijas pasūtījumam. Varat arī izmantot atslēgvārdu LIMIT, kas samazina kopējo kārtošanas laiku.

Kāda ir atšķirība starp Spark un Hadoop?

Atbilde. Lai gan gan Hadoop, gan Spark ir izplatītas apstrādes sistēmas, to galvenā atšķirība ir to apstrāde. Ja Hadoop ir efektīva pakešu apstrādei, Spark ir efektīva datu apstrādei reāllaikā.

Turklāt Hadoop galvenokārt lasa un raksta failus HDFS, savukārt Spark izmanto elastīgas sadalītās datu kopas koncepciju, lai apstrādātu datus RAM.

Pamatojoties uz to latentumu, Hadoop ir liela latentuma skaitļošanas sistēma bez interaktīva režīma datu apstrādei, savukārt Spark ir zema latentuma skaitļošanas sistēma, kas datus apstrādā interaktīvi.

Salīdziniet Sqoop un Flume.

Atbilde: Sqoop un Flume ir Hadoop rīki, kas apkopo no dažādiem avotiem savāktos datus un ielādē datus HDFS.

  • Sqoop (SQL-to-Hadoop) iegūst strukturētus datus no datu bāzēm, tostarp Teradata, MySQL, Oracle u.c., savukārt Flume ir noderīga, lai iegūtu nestrukturētus datus no datu bāzes avotiem un ielādētu tos HDFS.
  • Runājot par notikumiem, Flume ir notikumu virzīts, savukārt Sqoop nevirza notikumi.
  • Sqoop izmanto uz savienotāju balstītu arhitektūru, kurā savienotāji zina, kā izveidot savienojumu ar citu datu avotu. Flume izmanto uz aģentiem balstītu arhitektūru, un uzrakstītais kods ir aģents, kas ir atbildīgs par datu iegūšanu.
  • Flume izplatītā rakstura dēļ tas var viegli vākt un apkopot datus. Sqoop ir noderīgs paralēlai datu pārsūtīšanai, kā rezultātā izvade ir vairākos failos.

Izskaidrojiet BloomMapFile.

Atbilde: BloomMapFile ir klase, kas paplašina MapFile klasi un izmanto dinamiskus ziedēšanas filtrus, kas nodrošina ātru atslēgām piederības pārbaudi.

Uzskaitiet atšķirību starp HiveQL un PigLatin.

Atbilde: Lai gan HiveQL ir deklaratīva valoda, kas ir līdzīga SQL, PigLatin ir augsta līmeņa procesuālā datu plūsmas valoda.

Kas ir datu attīrīšana?

Atbilde: Datu tīrīšana ir būtisks process, lai atbrīvotos no identificētām datu kļūdām vai labotu tās, kas ietver nepareizus, nepilnīgus, bojātus, dublētus un nepareizi formatētus datus datu kopā.

Šī procesa mērķis ir uzlabot datu kvalitāti un nodrošināt precīzāku, konsekventāku un uzticamāku informāciju, kas nepieciešama efektīvai lēmumu pieņemšanai organizācijā.

Secinājums💃

Tā kā pašreizējais Big Data un Hadoop darba iespēju pieaugums, iespējams, vēlēsities uzlabot savas izredzes iekļūt. Šī raksta Hadoop intervijas jautājumi un atbildes palīdzēs jums tikt galā ar gaidāmo interviju.

Pēc tam varat apskatīt labus resursus, lai uzzinātu Big Data un Hadoop.

Veiksmi! 👍