Descărcați PDF
Următoarele sunt întrebările frecvente în interviurile pentru începători, precum și dezvoltatorii cu experiență.
1) Ce este Hadoop Map Reduce?
Pentru procesarea seturilor mari de date în paralel într-un cluster Hadoop, se utilizează cadrul Hadoop MapReduce. Analiza datelor folosește o hartă în doi pași și reduce procesul.
2) Cum funcționează Hadoop MapReduce?
În MapReduce, în timpul fazei de hartă, numără cuvintele din fiecare document, în timp ce în faza de reducere agregă datele conform documentului care acoperă întreaga colecție. În timpul fazei de hartă, datele de intrare sunt împărțite în diviziuni pentru analiză prin sarcini de hartă care rulează în paralel în cadrul Hadoop.
3) Explicați ce se amestecă în MapReduce?
Procesul prin care sistemul efectuează sortarea și transferă ieșirile hărții către reductor ca intrări este cunoscut sub numele de shuffle
4) Explicați ce este cache-ul distribuit în MapReduce Framework?
Memoria cache distribuită este o caracteristică importantă oferită de cadrul MapReduce. Când doriți să partajați unele fișiere pe toate nodurile din Hadoop Cluster, se utilizează cache distribuită. Fișierele pot fi un fișier jar executabil sau un fișier simplu de proprietăți.
5) Explicați ce este NameNode în Hadoop?
NameNode în Hadoop este nodul, unde Hadoop stochează toate informațiile de localizare a fișierelor în HDFS (Hadoop Distributed File System). Cu alte cuvinte, NameNode este elementul central al unui sistem de fișiere HDFS. Păstrează înregistrarea tuturor fișierelor din sistemul de fișiere și urmărește datele fișierelor pe cluster sau mai multe mașini
6) Explicați ce este JobTracker în Hadoop? Care sunt acțiunile urmate de Hadoop?
În Hadoop pentru trimiterea și urmărirea joburilor MapReduce, se folosește JobTracker. Job Tracker rulează pe propriul proces JVM
Job Tracker efectuează următoarele acțiuni în Hadoop
- Cererea clientului trimite lucrări la urmăritorul de joburi
- JobTracker comunică cu modul Name pentru a determina locația datelor
- În apropierea datelor sau cu sloturile disponibile JobTracker localizează nodurile TaskTracker
- Pe nodurile TaskTracker alese, acesta trimite lucrarea
- Când o sarcină eșuează, Job tracker anunță și decide ce să facă atunci.
- Nodurile TaskTracker sunt monitorizate de JobTracker
7) Explicați ce este bătăile inimii în HDFS?
Heartbeat se referă la un semnal utilizat între un nod de date și nodul Name și între trackerul de sarcini și trackerul de joburi, dacă nodul Name sau trackerul de joburi nu răspunde la semnal, atunci se consideră că există unele probleme cu nodul sau sarcina de date tracker
8) Explicați ce sunt combinatorii și când ar trebui să utilizați un combinator într-un job MapReduce?
Pentru a crește eficiența programului MapReduce, se utilizează combinatoare. Cantitatea de date poate fi redusă cu ajutorul combinatorelor care trebuie transferate către reductoare. Dacă operația efectuată este comutativă și asociativă, puteți utiliza codul reductor ca combinator. Executarea combinatorului nu este garantată în Hadoop
9) Ce se întâmplă atunci când un nod de date eșuează?
Când un nod de date eșuează
- Jobtracker și namenode detectează eșecul
- Pe nodul eșuat, toate sarcinile sunt reprogramate
- Namenode reproduce datele utilizatorului pe un alt nod
10) Explicați ce este execuția speculativă?
În Hadoop în timpul Execuției Speculative, se lansează un anumit număr de sarcini duplicate. Pe un nod sclav diferit, mai multe copii ale aceleiași hărți sau sarcină de reducere pot fi executate folosind Execuția speculativă. În cuvinte simple, dacă o anumită unitate durează mult timp pentru a finaliza o activitate, Hadoop va crea o activitate duplicat pe un alt disc. Un disc care termină sarcina mai întâi este păstrat și discurile care nu se termină mai întâi sunt ucise.
11) Explicați care sunt parametrii de bază ai unui Mapper?
Parametrii de bază ai unui Mapper sunt
- LongWritable și Text
- Text și IntWritable
12) Explicați care este funcția partiționarului MapReduce?
Funcția partiționarului MapReduce este de a vă asigura că toată valoarea unei singure chei merge la același reductor, ceea ce ajută la distribuirea uniformă a ieșirii hărții peste reductoare.
13) Explicați care este diferența dintre un bloc de intrare și un bloc HDFS?
Diviziunea logică a datelor este cunoscută sub numele de Split, în timp ce o diviziune fizică a datelor este cunoscută sub numele de HDFS Block
14) Explicați ce se întâmplă în format text?
În formatul de introducere a textului, fiecare linie din fișierul text este o înregistrare. Valoarea este conținutul liniei, în timp ce Cheia este decalajul de octeți al liniei. De exemplu, Key: longWritable, Value: text
15) Menționați care sunt principalii parametri de configurare pe care trebuie să îi specifice utilizatorul pentru a rula MapReduce Job?
Utilizatorul cadrului MapReduce trebuie să specifice
- Locațiile de intrare ale jobului în sistemul de fișiere distribuit
- Locația de ieșire a jobului în sistemul de fișiere distribuit
- formatul de intrare
- Format de iesire
- Clasa care conține funcția de hartă
- Clasa care conține funcția de reducere
- Fișier JAR care conține clasele maper, reductor și driver
16) Explicați ce este WebDAV în Hadoop?
Pentru a sprijini editarea și actualizarea fișierelor WebDAV este un set de extensii la HTTP. Pe majoritatea sistemului de operare, partajările WebDAV pot fi montate ca sisteme de fișiere, deci este posibil să accesați HDFS ca sistem de fișiere standard prin expunerea HDFS peste WebDAV.
17) Explicați ce este Sqoop în Hadoop?
Pentru a transfera datele între Managementul bazei de date relaționale (RDBMS) și Hadoop HDFS se folosește un instrument cunoscut sub numele de Sqoop. Utilizarea datelor Sqoop poate fi transferată din RDMS cum ar fi MySQL sau Oracle în HDFS, precum și exportul de date din fișierul HDFS în RDBMS
18) Explicați cum programează JobTracker o sarcină?
Urmăritorul de sarcini trimite mesaje de bătăi ale inimii către Jobtracker, de obicei la fiecare câteva minute, pentru a vă asigura că JobTracker este activ și funcționează. Mesajul informează, de asemenea, JobTracker cu privire la numărul de sloturi disponibile, astfel încât JobTracker să poată rămâne la curent cu ceea ce poate fi delegat activitatea clusterului
19) Explicați ce este Sequencefileinputformat?
Sequencefileinputformat este utilizat pentru citirea fișierelor în ordine. Este un format specific de fișier binar comprimat, care este optimizat pentru transmiterea datelor între ieșirea unui job MapReduce la intrarea altor joburi MapReduce.
20) Explicați ce face clasa conf.setMapper?
Conf.setMapperclass setează clasa de mapare și toate lucrurile legate de lucrarea de hartă, cum ar fi citirea datelor și generarea unei perechi cheie-valoare din mapator
21) Explicați ce este Hadoop?
Este un cadru software open-source pentru stocarea datelor și rularea aplicațiilor pe clustere de hardware de marfă. Oferă o putere de procesare enormă și stocare masivă pentru orice tip de date.
22) Menționează care este diferența dintre un RDBMS și Hadoop?
RDBMS | Hadoop |
RDBMS este un sistem de gestionare a bazelor de date relaționale | Hadoop este o structură plană bazată pe noduri |
A fost utilizat pentru procesarea OLTP în timp ce Hadoop | În prezent este utilizat pentru procesarea analitică și pentru prelucrarea datelor BIG |
În RDBMS, clusterul de baze de date utilizează aceleași fișiere de date stocate într-un spațiu de stocare partajat | În Hadoop, datele de stocare pot fi stocate independent în fiecare nod de procesare. |
Trebuie să preprocesați datele înainte de a le stoca | nu trebuie să preprocesați datele înainte de a le stoca |
23) Menționați componentele de bază Hadoop?
Componentele de bază Hadoop includ,
- HDFS
- MapReduce
24) Ce este NameNode în Hadoop?
NameNode în Hadoop este locul în care Hadoop stochează toate informațiile despre locația fișierului în HDFS. Este nodul principal pe care rulează job tracker și constă din metadate.
25) Menționează care sunt componentele de date utilizate de Hadoop?
Componentele de date utilizate de Hadoop sunt
- Porc
- Stup
26) Menționează care este componenta de stocare a datelor utilizată de Hadoop?
Componenta de stocare a datelor utilizată de Hadoop este HBase.
27) Menționează care sunt cele mai comune formate de intrare definite în Hadoop?
Cele mai comune formate de intrare definite în Hadoop sunt;
- TextInputFormat
- KeyValueInputFormat
- SequenceFileInputFormat
28) În Hadoop ce este InputSplit?
Împarte fișierele de intrare în bucăți și atribuie fiecare împărțire unui mapator pentru procesare.
29) Pentru un job Hadoop, cum veți scrie un partiționar personalizat?
Scrii un partiționator personalizat pentru o lucrare Hadoop, urmezi calea următoare
- Creați o nouă clasă care extinde Partitioner Class
- Metoda suprascrie getPartition
- În învelișul care rulează MapReduce
- Adăugați partiționarea personalizată la job folosind metoda setă Partitioner Class sau - adăugați partiționatorul personalizat la job ca fișier de configurare
30) Pentru un loc de muncă în Hadoop, este posibil să se schimbe numărul de maperi care urmează să fie creați?
Nu, nu este posibil să se schimbe numărul de maperi care vor fi creați. Numărul de mapere este determinat de numărul de diviziuni de intrare.
31) Explicați ce este un fișier de secvență în Hadoop?
Pentru a stoca perechi binară cheie / valoare, se utilizează fișierul de secvență. Spre deosebire de fișierul comprimat obișnuit, fișierul secvențial acceptă divizarea chiar și atunci când datele din fișier sunt comprimate.
32) Când Namenode nu funcționează, ce se întâmplă cu urmăritorul de locuri de muncă?
Namenode este singurul punct de eșec în HDFS, astfel încât atunci când Namenode este în jos, clusterul dvs. va porni.
33) Explicați cum se face indexarea în HDFS?
Hadoop are un mod unic de indexare. Odată ce datele sunt stocate în funcție de dimensiunea blocului, HDFS va continua să stocheze ultima parte a datelor care spune unde va fi următoarea parte a datelor.
34) Explicați este posibil să căutați fișiere folosind metacaractere?
Da, este posibil să căutați fișiere folosind metacaractere.
35) Enumerați cele trei fișiere de configurare Hadoop?
Cele trei fișiere de configurare sunt
- core-site.xml
- mapred-site.xml
- hdfs-site.xml
36) Explicați cum puteți verifica dacă Namenode funcționează lângă folosind comanda jps?
Pe lângă utilizarea comenzii jps, puteți verifica dacă Namenode funcționează
/etc/init.d/hadoop-0.20-namenode status.
37) Explicați ce este „hartă” și ce este „reductor” în Hadoop?
În Hadoop, o hartă este o fază în rezolvarea interogărilor HDFS. O hartă citește date dintr-o locație de intrare și scoate o pereche de valori cheie în funcție de tipul de intrare.
În Hadoop, un reductor colectează ieșirea generată de mapator, o procesează și creează o ieșire finală proprie.
38) În Hadoop, care fișier controlează raportarea în Hadoop?
În Hadoop, fișierul hadoop-metrics.properties controlează raportarea.
39) Pentru utilizarea Hadoop enumerați cerințele de rețea?
Pentru utilizarea Hadoop, lista cerințelor de rețea sunt:
- Conexiune SSH fără parolă
- Secure Shell (SSH) pentru lansarea proceselor serverului
40) Menționează ce este conștientizarea rack?
Conștientizarea rack-ului este modul în care namenode-ul determină modul de plasare a blocurilor pe baza definițiilor rack-ului.
41) Explicați ce este un Task Tracker în Hadoop?
Un Task Tracker în Hadoop este un demon de nod sclav din cluster care acceptă sarcini de la un JobTracker. De asemenea, trimite mesaje ale bătăilor inimii către JobTracker, la fiecare câteva minute, pentru a confirma că JobTracker este încă în viață.
42) Menționează ce demoni rulează pe un nod master și noduri slave?
- Daemonii rulați pe nodul principal este „NameNode”
- Daemonii executați pe fiecare nod Slave sunt „Task Tracker” și „Data”
43) Explicați cum puteți depana codul Hadoop?
Metodele populare de depanare a codului Hadoop sunt:
- Prin utilizarea interfeței web oferite de cadrul Hadoop
- Prin utilizarea contoarelor
44) Explicați ce este stocarea și calculați nodurile?
- Nodul de stocare este mașina sau computerul în care se află sistemul dvs. de fișiere pentru a stoca datele de procesare
- Nodul de calcul este computerul sau mașina unde va fi executată logica dvs. de afaceri reală.
45) Menționează la ce folosește obiectul contextual?
Obiectul context permite mapatorului să interacționeze cu restul Hadoop
sistem. Include date de configurare pentru job, precum și interfețe care îi permit să emită ieșire.
46) Menționează care este următorul pas după Mapper sau MapTask?
Următorul pas după Mapper sau MapTask este că ieșirea Mapperului este sortată, iar partițiile vor fi create pentru ieșire.
47) Menționează care este numărul de partiționare implicită din Hadoop?
În Hadoop, partiționarea implicită este o partiționare „Hash”.
48) Explicați care este scopul RecordReader în Hadoop?
În Hadoop, RecordReader încarcă datele din sursa sa și le convertește în perechi (cheie, valoare) potrivite pentru citirea de către Mapper.
49) Explicați cum sunt partiționate datele înainte de a fi trimise reductorului dacă nu este definit niciun partiționator personalizat în Hadoop?
Dacă în Hadoop nu este definit niciun partiționar personalizat, atunci un partiționar implicit calculează o valoare hash pentru cheie și atribuie partiția pe baza rezultatului.
50) Explicați ce se întâmplă atunci când Hadoop a generat 50 de sarcini pentru o lucrare și una dintre sarcini a eșuat?
Va reporni sarcina din nou pe un alt TaskTracker dacă sarcina eșuează mai mult decât limita definită.
51) Menționează care este cel mai bun mod de a copia fișiere între clustere HDFS?
Cel mai bun mod de a copia fișiere între clustere HDFS este folosind mai multe noduri și comanda distcp, astfel încât volumul de lucru să fie partajat.
52) Menționează care este diferența dintre HDFS și NAS?
Blocurile de date HDFS sunt distribuite pe unitățile locale ale tuturor mașinilor dintr-un cluster, în timp ce datele NAS sunt stocate pe hardware dedicat.
53) Menționează în ce fel Hadoop este diferit de alte instrumente de procesare a datelor?
În Hadoop, puteți crește sau micșora numărul de maperi fără să vă faceți griji cu privire la volumul de date care urmează să fie procesate.
54) Menționează ce meserie face clasa conf?
Clasa conf. Joburi separă diferite joburi care rulează pe același cluster. Realizează setările la nivel de job, cum ar fi declararea unui job într-un mediu real.
55) Menționați ce este contractul API-uri Hadoop MapReduce pentru o cheie și o clasă de valoare?
Pentru o clasă cheie și valoare, există două contracte API Hadoop MapReduce
- Valoarea trebuie să definească interfața org.apache.hadoop.io.Writable
- Cheia trebuie să fie definirea interfeței org.apache.hadoop.io.WritableComparable
56) Menționează care sunt cele trei moduri în care poate fi rulat Hadoop?
Sunt cele trei moduri în care poate fi rulat Hadoop
- Mod pseudo distribuit
- Mod autonom (local)
- Mod complet distribuit
57) Menționează ce face formatul de introducere a textului?
Formatul de introducere a textului va crea un obiect linie care este un număr hexazecimal. Valoarea este considerată ca un text de linie întreagă, în timp ce cheia este considerată ca un obiect de linie. Cartograful va primi valoarea ca parametru „text”, în timp ce cheia ca parametru „cu inscripție lungă”.
58) Menționați câte InputSplits este realizat de un cadru Hadoop?
Hadoop va face 5 divizări
- 1 divizare pentru fișiere 64K
- 2 split pentru fișiere de 65 MB
- 2 divizări pentru fișiere de 127 MB
59) Menționează ce este cache-ul distribuit în Hadoop?
Memoria cache distribuită în Hadoop este o facilitate oferită de cadrul MapReduce. În momentul executării lucrării, este folosit pentru a memora în cache fișierul. Framework copiază fișierele necesare în nodul slave înainte de executarea oricărei sarcini la acel nod.
60) Explicați cum joacă Hadoop Classpath un rol vital în oprirea sau pornirea în demonii Hadoop?
Classpath va consta dintr-o listă de directoare care conțin fișiere jar pentru a opri sau porni demonii.