Tracking-Jobtracker und Tasktracker in Hadoop 1

MapReduce Verarbeitung in Hadoop 1 durch die Jobtracker und Tasktracker Dämonen behandelt. Die Jobtracker hält eine Ansicht aller verfügbaren Verarbeitungsressourcen im Hadoop-Cluster und als Anwendungsanforderungen in kommen, es Pläne und setzt sie auf die Tasktracker Knoten zur Ausführung.

Als Anwendungen ausgeführt werden, erhält der Jobtracker Status-Updates von den Tasktracker Knoten ihre Fortschritte zu verfolgen und, falls erforderlich, die Handhabung von irgendwelchen Fehlern zu koordinieren. Der Jobtracker muss auf einem Master-Knoten in dem Hadoop-Cluster ausgeführt werden, wie es die Ausführung aller MapReduce-Anwendungen im Cluster koordiniert, so ist es eine unternehmenskritischen Service.

Eine Instanz der Tasktracker-Daemon läuft auf jedem Slave-Knoten in dem Hadoop-Cluster, was bedeutet, dass jeder Slave-Knoten einen Dienst hat, dass sie sich mit der Bearbeitung (Tasktracker) und der Lagerung (DataNode) bindet, die Hadoop ermöglicht ein verteiltes System sein.

Als Slave-Verfahren erhält der Tasktracker Verarbeitungsanforderungen von der Jobtracker. Seine primäre Aufgabe ist die Durchführung von MapReduce zu verfolgen Workloads lokal auf dem Slave-Knoten passiert und Status-Updates an den Jobtracker zu senden.

TaskTrackers verwalten die Verarbeitungsressourcen auf jedem Slave-Knoten in Form von Schlitzen Verarbeitung - die für die Karten Aufgaben definiert Slots und reduzieren Aufgaben, um genau zu sein. Die Gesamtzahl der Karte und reduzieren Slots gibt an, wie viele Karte und reduzieren Aufgaben können gleichzeitig auf dem Slave-Knoten ausgeführt werden.

Wenn es eine Hadoop Cluster tuning kommt, die optimale Anzahl der Karte zur Einstellung und zur Verringerung Schlitze ist kritisch. Die Anzahl der Slots muss sorgfältig basierend auf den verfügbaren Arbeitsspeicher, Festplatte und CPU-Ressourcen an jedem Slave-Knoten konfiguriert werden. Der Speicher ist der kritischste dieser drei Ressourcen aus Sicht der Leistung. Als solches muss die Gesamtzahl der Aufgabenschlitze mit der maximalen Speichermenge auf die Java-Heap-Größe zugewiesen ausgeglichen werden.

Beachten Sie, dass jede Karte und reduzieren Aufgabe eine eigene Java Virtual Machine laicht (JVM) und dass der Heap stellt die Menge an Speicher, der für jede JVM zugewiesen wird. Das Verhältnis von Kartenschlitzen Schlitzen zu reduzieren, ist auch ein wichtiger Gesichtspunkt.

Zum Beispiel, wenn Sie zu viele Kartenschlitze haben und nicht genug reduzieren Slots für Ihre Workloads Kartensteckplätze neigen dazu, untätig zu sitzen, während Ihre Aufträge warten auf Slots reduzieren verfügbar wird.

Verschiedene Sätze von Schlitzen für die Karten Aufgaben definiert und Aufgaben reduzieren, weil sie ganz anders Computing-Ressourcen nutzen. Karte Aufgaben werden auf Basis von Daten Ort zugeordnet, und sie hängen stark von Platten-I / O und CPU. Reduzieren Sie Aufgaben werden je nach Verfügbarkeit, nicht auf Ort zugewiesen, und sie hängen stark von Netzwerkbandbreite, weil sie Ausgabe von Karten Aufgaben erhalten müssen.

Menü