Einführung in MapReduce Interview Fragen und Antworten
MapReduce ist ein einfaches Modell zur parallelen Datenprogrammierung, das auf Skalierbarkeit und Fehlertoleranz ausgelegt ist. Wir können sagen, dass MapReduce ein Framework ist, das das Konzept von Knoten verwendet, um die in großen Datenmengen auftretenden Probleme zu parallelisieren. Wenn es sich um ein lokales Netzwerk handelt, wird dieselbe Hardware verwendet, und wenn MapReduce geografisch verteilt ist, wird jeweils unterschiedliche Hardware verwendet. MapReduce besteht im Wesentlichen aus der Map () - und der Reduce () -Funktion. Bekannt wurde es durch das Open-Source-Projekt Hadoop.
Im Folgenden sind die 9 wichtigen Fragen und Antworten zum MapReduce-Interview für 2019 aufgeführt:
Wenn Sie nach einem Job suchen, der mit MapReduce zusammenhängt, müssen Sie sich auf die MapReduce-Interviewfragen für 2019 vorbereiten. Obwohl jedes MapReduce-Interview anders ist und der Umfang eines Jobs auch anders ist, können wir Ihnen bei den wichtigsten MapReduce-Interview-Fragen mit Antworten helfen, die Ihnen helfen, den Sprung zu wagen und Ihren Erfolg in Ihrem Interview zu erzielen.
Diese Fragen gliedern sich in zwei Teile:
Teil 1 - MapReduce Interview Fragen (Basic)
In diesem ersten Teil werden grundlegende Fragen und Antworten zu MapReduce-Vorstellungsgesprächen behandelt.
1. Was ist MapReduce?
Antworten:
MapReduce ist ein einfaches Modell zur parallelen Datenprogrammierung, das auf Skalierbarkeit und Fehlertoleranz ausgelegt ist. Mit anderen Worten, es handelt sich um ein Framework, das parallelisierbare Probleme in großen Datenmengen mithilfe des Konzepts von Knoten (der Anzahl der Computer) verarbeitet, die wiederum als Cluster klassifiziert werden, wenn es sich um ein lokales Netzwerk handelt, und dieselbe Hardware oder dieselben Grids verwendet, wenn dies der Fall ist geografisch verteilt und verwenden unterschiedliche Hardware. Das MapReduce besteht im Wesentlichen aus einer Map () -Funktion und einer Reduce () -Funktion. Es wurde von Google entwickelt und verarbeitet täglich viele Petabyte an Daten. Es wurde durch das Open-Source-Projekt Hadoop populär gemacht und wird bei Yahoo, Facebook und Amazon verwendet, um nur einige zu nennen.
2. Was ist MapReduce for-By Company?
Antworten:
Google
• Erstellung eines Index für die Google-Suche
Der Prozess der Erstellung eines positionsbezogenen oder nicht positionsbezogenen Index wird als Indexerstellung oder Indexierung bezeichnet. Die Rolle von MapReduce ist die Indexkonstruktion und wurde für große Computercluster entwickelt. Der Zweck des Clusters besteht darin, Rechenprobleme für Knoten oder Computer zu lösen, die aus Standardteilen und nicht aus einem Supercomputer bestehen.
• Artikel-Clustering für Google News
Beim Artikel-Clustering werden die Seiten zunächst danach klassifiziert, ob sie für das Clustering benötigt werden. Die Seiten enthalten viele Informationen, die für das Clustering nicht benötigt werden. Anschließend wird der Artikel anhand von Stichwörtern und der angegebenen Gewichtung in seine Vektorform gebracht. Dann werden sie mithilfe von Algorithmen geclustert.
• Statistische maschinelle Übersetzung
Die Übersetzung zweisprachiger Textkorpora durch Analyse generiert statistische Modelle, die eine Sprache mit Gewichten in eine andere übersetzen und auf die wahrscheinlichste Übersetzung reduziert werden.
Yahoo
• "Webkarte" für Yahoo! Suche
Ähnlich wie beim Artikel-Clustering für Google News wird MapReduce zum Clustering von Suchausgaben auf dem Yahoo! Plattform.
• Spamerkennung für Yahoo! Mail
Facebook
• Data Mining
Der jüngste Trend der Datenexplosion hat dazu geführt, dass anspruchsvolle Methoden zur Aufteilung der Daten in Blöcke erforderlich sind, die für den nächsten Analyseschritt problemlos verwendet werden können.
• d Optimieren
• Spamerkennung
Fahren wir mit den nächsten MapReduce-Interviewfragen fort.
3. Was sind die MapReduce-Designziele?
Antworten:
• Skalierbarkeit auf große Datenmengen
Da MapReduce ein Framework ist, das auf die Arbeit mit parallelisierbaren Daten unter Verwendung des Konzepts von Knoten abzielt, bei denen es sich um die Anzahl der Computer als Cluster oder Gitter handelt, kann es auf n Computer skaliert werden. Ein wichtiges Designziel von MapReduce ist daher, dass es auf Tausende von Computern und 10.000 Festplatten skalierbar ist.
• Kosteneffizienz
Da MapReduce mit der Parallelisierung von Daten an den Knoten oder der Anzahl der Computer arbeitet, sind die folgenden Gründe ausschlaggebend für die Kosteneffizienz:
-Cheap Commodity-Maschinen anstelle eines Supercomputers. Sie sind zwar billig, aber unzuverlässig.
-Commodity Network
-Automatische Fehlertoleranz, dh es sind weniger Administratoren erforderlich.
-Es ist einfach zu bedienen, dh es werden weniger Programmierer benötigt.
4. Was sind die Herausforderungen von MapReduce?
Antworten:
Dies sind die häufigsten Fragen zu MapReduce-Interviews, die in einem Interview gestellt werden. Die wichtigsten Herausforderungen von MapReduce sind:
-Cheap Nodes scheitern, besonders wenn Sie viele haben
Die mittlere Zeit zwischen Ausfällen für 1 Knoten beträgt 3 Jahre. Die mittlere Zeit zwischen Ausfällen für 1000 Knoten beträgt 1 Tag. Die Lösung besteht darin, Fehlertoleranz in das System selbst einzubauen.
-Commodity-Netzwerk ist gleich oder impliziert niedrige Bandbreite
Die Lösung für eine niedrige Bandbreite besteht darin, die Berechnung auf die Daten zu übertragen.
-Programmieren verteilter Systeme ist schwierig
Die Lösung hierfür besteht darin, dass Benutzer gemäß dem datenparallelen Programmiermodell Funktionen zum „Abbilden“ und „Reduzieren“ schreiben. Das System verteilt die Arbeit und behandelt die Fehler.
5. Was ist das MapReduce-Programmiermodell?
Antworten:
Das MapReduce-Programmiermodell basiert auf einem Konzept, das als Schlüsselwertdatensätze bezeichnet wird. Es bietet auch Paradigmen für die parallele Datenverarbeitung. Zur Verarbeitung der Daten in MapReduce müssen sowohl die Eingabedaten als auch die Ausgabe im Format mehrerer Schlüssel-Wert-Paare abgebildet werden. Das einzelne Schlüssel-Wert-Paar wird auch als Datensatz bezeichnet. Das MapReduce-Programmiermodell besteht aus einer Map () -Funktion und einer Reduce-Funktion. Das Modell für diese ist wie folgt.
Map () -Funktion: (K in, V in) Liste (K inter, V inter)
Reduziere () Funktion: (K inter, Liste (V inter)) Liste (K out, V out)
Teil 2 - Fragen zu MapReduce-Vorstellungsgesprächen (Fortgeschrittene)
Werfen wir jetzt einen Blick auf die erweiterten MapReduce-Interviewfragen.
6. Was sind die MapReduce-Ausführungsdetails?
Antworten:
Bei der Ausführung von MapReduce steuert ein einzelner Master die Jobausführung auf mehreren Slaves. Die Mapper sollten vorzugsweise auf demselben Knoten oder Rack wie ihr Eingabeblock platziert werden, um die Netzwerknutzung zu minimieren. Außerdem speichern Mapper die Ausgaben auf der lokalen Festplatte, bevor sie an die Reduzierungen übergeben werden. Dies ermöglicht die Wiederherstellung, wenn ein Reduzierer abstürzt, und ermöglicht mehr Reduzierer als Knoten.
7. Was ist ein Combiner?
Antworten:
Der Combiner, der auch als Semi-Reducer bezeichnet wird, akzeptiert Eingaben aus der Map-Klasse und übergibt die ausgegebenen Schlüssel-Wert-Paare an die Reducer-Klasse. Die Hauptfunktion eines Kombinierers besteht darin, Kartenausgabedatensätze mit demselben Schlüssel zusammenzufassen. Mit anderen Worten ist ein Kombinierer eine lokale Aggregationsfunktion für wiederholte Schlüssel, die von derselben Karte erzeugt werden. Es funktioniert für assoziative Funktionen wie SUM, COUNT und MAX. Die Größe der Zwischendaten wird verringert, da es sich um eine Zusammenfassung der Werte für alle sich wiederholenden Schlüssel handelt.
Fahren wir mit den nächsten MapReduce-Interviewfragen fort.
8.Warum Schwein? Warum nicht MapReduce?
Antworten:
• MapReduce ermöglicht es dem Programmierer, eine Kartenfunktion gefolgt von einer Reduzierungsfunktion auszuführen. Es kann jedoch eine Herausforderung sein, daran zu arbeiten, wie Ihre Datenverarbeitung in dieses Muster passt, das häufig mehrere MapReduce-Stufen erfordert.
• Mit Pig sind die Datenstrukturen viel umfangreicher, da sie mehrwertig und verschachtelt sind und die Transformationen, die Sie auf die Daten anwenden können, viel leistungsfähiger sind. Dazu gehören beispielsweise Verknüpfungen, die in MapReduce nicht möglich sind.
• Pig ist auch ein Programm, das die Umwandlung in eine Reihe von MapReduce-Jobs umwandelt.
9.MapReduce Kritik
Antworten:
Eine bekannte Kritik an MapReduce ist, dass der Entwicklungszyklus sehr lang ist. Das Schreiben der Mapper und Reducer, das Kompilieren und Verpacken des Codes, das Übergeben des Jobs und das Abrufen der Ergebnisse sind zeitaufwändig. Selbst mit Streaming, das den Kompilierungs- und Paketschritt entfernt, dauert die Erfahrung noch lange.
Empfohlener Artikel
Dies war ein Leitfaden für die Liste der MapReduce-Interviewfragen und -antworten, damit der Kandidat diese MapReduce-Interviewfragen leicht durchgreifen kann. Sie können sich auch die folgenden Artikel ansehen, um mehr zu erfahren -
- Wichtige Fragen zum Data Analytics-Interview
- 10 Best Design Pattern Interview-Fragen
- Fragen in Vorstellungsgesprächen bei Elasticsearch
- Die nützlichsten Ruby Interview-Fragen
- So funktioniert MapReduce