Zuhause Persönliche Finanzen Die Zuordnungsphase von Hadoops MapReduce-Anwendungsfluss - Dummys

Die Zuordnungsphase von Hadoops MapReduce-Anwendungsfluss - Dummys

Video: 12: Randomisierte Selektion, Parallele Implementierung, Zufälliges Zuordnen, Master-Worker-Schema 2025

Video: 12: Randomisierte Selektion, Parallele Implementierung, Zufälliges Zuordnen, Master-Worker-Schema 2025
Anonim

Eine MapReduce-Anwendung verarbeitet die Daten in Eingabesplits auf einer datensatzweisen Basis und jeder Datensatz wird von MapReduce als Schlüssel / Wert verstanden Paar. Nachdem die Eingabesplits berechnet wurden, können die Mapper-Tasks mit ihrer Verarbeitung beginnen, dh direkt nachdem die Planungsfunktion des Resource Managers ihnen ihre Verarbeitungsressourcen zugewiesen hat. (In Hadoop 1 weist der JobTracker Mapper-Tasks bestimmten Verarbeitungsfenstern zu.)

Die Mapper-Task selbst verarbeitet ihren Input-Split-Datensatz zu einem Zeitpunkt - in der Abbildung wird dieser einzelne Datensatz durch das Schlüssel / Wert-Paar dargestellt. Im Fall unserer Flugdaten wird bei der Berechnung der Eingabesplits (unter Verwendung der standardmäßigen Dateiverarbeitungsmethode für Textdateien) davon ausgegangen, dass jede Zeile in der Textdatei ein einzelner Datensatz ist.

Für jeden Datensatz stellt der Text der Zeile selbst den Wert dar, und der Byte-Offset jeder Zeile vom Beginn der Teilung wird als Schlüssel angesehen.

Sie fragen sich vielleicht, warum die Zeilennummer nicht anstelle des Byte-Offsets verwendet wird. Wenn Sie bedenken, dass eine sehr große Textdatei in viele einzelne Datenblöcke zerlegt und so viele Aufteilungen verarbeitet wird, ist die Zeilennummer ein riskantes Konzept.

Die Anzahl der Zeilen in jeder Aufteilung ist unterschiedlich, daher wäre es unmöglich, die Anzahl der Zeilen zu berechnen, die der verarbeiteten vorangehen. Mit dem Byte-Offset können Sie jedoch genau sein, da jeder Block eine feste Anzahl von Bytes hat.

Wenn ein Mapper-Task jeden Datensatz verarbeitet, generiert er ein neues Schlüssel / Wert-Paar: Der Schlüssel und der Wert können sich hier vollständig vom Eingangspaar unterscheiden. Die Ausgabe der Mapper-Aufgabe ist die vollständige Sammlung aller dieser Schlüssel / Wert-Paare.

Bevor die endgültige Ausgabedatei für jeden Mapper-Task geschrieben wird, wird die Ausgabe basierend auf dem Schlüssel partitioniert und sortiert. Diese Partitionierung bedeutet, dass alle Werte für jeden Schlüssel zusammen gruppiert sind.

Im Fall der ziemlich einfachen Beispielanwendung gibt es nur einen einzigen Reduzierer, so dass die gesamte Ausgabe der Mapper-Aufgabe in eine einzelne Datei geschrieben wird. In Fällen mit mehreren Reduzierstücken kann jedoch jede Mapper-Aufgabe auch mehrere Ausgabedateien erzeugen.

Die Aufschlüsselung dieser Ausgabedateien basiert auf dem Partitionierungsschlüssel. Wenn beispielsweise nur drei verschiedene Partitionierungsschlüssel für die Mapper-Tasks ausgegeben werden und Sie drei Reduzierungen für den Job konfiguriert haben, gibt es drei Mapper-Ausgabedateien. Wenn in diesem Beispiel eine bestimmte Zuordnungsaufgabe eine Eingabeaufteilung verarbeitet und eine Ausgabe mit zwei der drei Schlüssel generiert, gibt es nur zwei Ausgabedateien.

Komprimieren Sie immer die Ausgabedateien Ihrer Mapper-Tasks. Der größte Vorteil liegt hier in Leistungssteigerungen, da durch das Schreiben kleinerer Ausgabedateien die unvermeidlichen Kosten für die Übertragung der Mapper-Ausgabe an die Knoten minimiert werden, auf denen die Reduzierer ausgeführt werden.

Der Standardpartitionierer ist in den meisten Situationen mehr als ausreichend, aber manchmal möchten Sie möglicherweise anpassen, wie die Daten partitioniert werden, bevor sie von den Reduzierungen verarbeitet werden. Zum Beispiel möchten Sie vielleicht, dass die Daten in Ihren Ergebnismengen nach dem Schlüssel und ihren Werten sortiert werden - eine so genannte sekundäre Sortierung.

Um dies zu tun, können Sie den Standard-Partitionierer außer Kraft setzen und eigene implementieren. Dieser Prozess erfordert jedoch einige Sorgfalt, weil Sie sicherstellen möchten, dass die Anzahl der Datensätze in jeder Partition einheitlich ist. (Wenn ein Reducer viel mehr Daten verarbeiten muss als die anderen Reducer, warten Sie bis der MapReduce-Auftrag fertig ist, während der einzelne überarbeitete Reducer durch seinen unverhältnismäßig großen Datensatz zieht.)

kann die in der MapReduce-Verarbeitung verfügbare Parallelität besser nutzen.

Die Zuordnungsphase von Hadoops MapReduce-Anwendungsfluss - Dummys

Die Wahl des Herausgebers

Wie man die Socialcast Mobile App benutzt - dummies

Wie man die Socialcast Mobile App benutzt - dummies

Sogar die stoischste Anwendung wie Microsoft Excel hat ein begleitendes Smartphone-App, natürlich hat Socialcast auch eine. Wenn es so wäre, wäre es nicht wirklich eine Ausrede zu sagen, dass Socialcast nicht sehr sozial wäre, wenn du es nicht mit in die große Welt außerhalb deiner Zelle mitnehmen könntest. Die mobile App ...

Wie man das App Verzeichnis von Yammer benutzt - dummies

Wie man das App Verzeichnis von Yammer benutzt - dummies

Sie haben vielleicht gehört: "Es gibt eine App dafür. "Nun, das ist der Fall bei Yammer, der als einzige Ressource für die Vernetzung am Arbeitsplatz funktioniert. Aber Yammer bietet Ihnen auch eine Menge Apps, mit denen Sie Ihr Arbeitsleben noch einfacher gestalten können. Es gibt zwei Möglichkeiten, auf das App-Verzeichnis zuzugreifen: Option ...

So ​​verwenden Sie die Yammer-Analysetools - Dummies

So ​​verwenden Sie die Yammer-Analysetools - Dummies

Yammer rühmt sich damit als "führendes soziales Unternehmensnetzwerk für Unternehmen" um die Arbeit intelligenter und schneller zu erledigen. "Woher weißt du, ob das wahr ist? Ein guter Weg, um zu sehen, wie es für Sie funktioniert, ist die Analyse von Yammer. Wie greifen Sie auf diese großartigen Tools zu? Es ist einfach. Log ...

Die Wahl des Herausgebers

Die Evolution von Distributed Computing für Big Data - Dummies

Die Evolution von Distributed Computing für Big Data - Dummies

Hinter allen wichtigen Trends des letzten Jahrzehnts, einschließlich Serviceorientierung, Cloud Computing, Virtualisierung und Big Data, ist eine grundlegende Technologie namens Distributed Computing. Einfach gesagt, ohne die Verteilung von Datenverarbeitung wäre keiner dieser Fortschritte möglich. Distributed Computing ist eine Technik, mit der einzelne Computer über geografische Gebiete hinweg miteinander vernetzt werden können, so als ob ...

Drei Anbieter mit Data Mining-Produkten - Dummies

Drei Anbieter mit Data Mining-Produkten - Dummies

Es gibt mehrere Anbieter, die Data-Mining-Produkte verkaufen, die Sie vielleicht in Betracht ziehen möchten. Verwenden Sie mit Ihrem Data Warehouse. Hier sind drei, die eine Überlegung wert sind. Microsoft Microsoft hat das serverseitige Data Mining mit Microsoft SQL Server 2005 eingeführt. Obwohl es nicht so ausgereift und ausgeklügelt wie SAS und SPSS ist, hat Microsoft im Laufe der Zeit seine Fähigkeit bewiesen ...

Grundlagen der Big-Data-Integration - Dummies

Grundlagen der Big-Data-Integration - Dummies

Die fundamentalen Elemente der Big-Data-Plattform verwalten Daten auf neue Weise verglichen mit der traditionellen relationalen Datenbank. Dies liegt daran, dass Skalierbarkeit und hohe Leistung erforderlich sind, um sowohl strukturierte als auch unstrukturierte Daten zu verwalten. Komponenten des Big-Data-Ökosystems von Hadoop bis NoSQL DB, MongoDB, Cassandra, ...

Die Wahl des Herausgebers

So ​​stellen Sie eine Verbindung zu Spotify Mobile her - Dummies

So ​​stellen Sie eine Verbindung zu Spotify Mobile her - Dummies

Die meisten modernen Smartphones sind Wi-Fi-fähig. In ein lokales Netzwerk können Sie Spotify-Tracks mithilfe von Wi-Fi auf Ihr Telefon streamen. Sie können Spotify Mobile zu Hause und über Wi-Fi-Netzwerke in Hotels und Cafés problemlos nutzen - Sie müssen nur sicherstellen, dass Sie angemeldet und verbunden sind. ...

Wie Spotify funktioniert - Dummies

Wie Spotify funktioniert - Dummies

Wie Spotify funktioniert, kann Auswirkungen auf den Festplattenspeicher Ihres Computers haben. Internetverbindung. Spotify funktioniert anders als viele andere Online-Musikdienste, weil es auf mehrere Arten angewiesen ist, um Ihnen reibungslos Musik ohne Verzögerungen zu liefern. In Computing-Sprechen, das Maß der Verzögerung zwischen Anfordern eines Songs und Hören es ...

So ​​erreichen Sie Spotify Support - Dummies

So ​​erreichen Sie Spotify Support - Dummies

Es kann vorkommen, dass Sie eine kleine Hilfe beim Navigieren und Verwenden von Spotify benötigen von deinen Spotify Freunden. Sie können jederzeit Support @ spotify per E-Mail senden. com mit Ihrer Frage oder melden Sie sich bei Twitter an und senden Sie einen Tweet an @spotify. Stellen Sie sicher, dass Sie alle Informationen einschließen, die dem Support-Team helfen könnten, einschließlich Ihres Benutzernamens, damit sie ...