Inhaltsverzeichnis:
Definition - Was bedeutet JobTracker?
JobTracker ist ein Daemon, der mit der MapReduce-Engine von Apache Hadoop ausgeführt wird. JobTracker ist ein wesentlicher Dienst, der alle MapReduce-Aufgaben auf die verschiedenen Knoten im Cluster verteilt, idealerweise auf die Knoten, die bereits Daten enthalten oder sich zumindest im selben Rack befinden wie die Knoten, die die Daten enthalten.
Techopedia erklärt JobTracker
JobTracker ist der Service innerhalb von Hadoop, der für die Entgegennahme von Kundenanfragen verantwortlich ist. Sie werden TaskTrackern auf DataNodes zugewiesen, auf denen die erforderlichen Daten lokal vorhanden sind. Ist dies nicht möglich, versucht JobTracker, die Aufgaben TaskTrackern in demselben Rack zuzuweisen, in dem sich die Daten lokal befinden. Wenn dies aus irgendeinem Grund auch fehlschlägt, weist JobTracker die Aufgabe einem TaskTracker zu, in dem eine Replik der Daten vorhanden ist. In Hadoop werden Datenblöcke über DataNodes hinweg repliziert, um Redundanz sicherzustellen. Wenn also ein Knoten im Cluster ausfällt, schlägt der Job ebenfalls fehl.
JobTracker-Prozess:
- Auftragsanforderungen von Client-Anwendungen werden vom JobTracker empfangen.
- JobTracker durchsucht den NameNode, um den Speicherort der erforderlichen Daten zu ermitteln.
- JobTracker sucht nach TaskTracker-Knoten, die die Daten enthalten oder sich zumindest in der Nähe der Daten befinden.
- Der Job wird an den ausgewählten TaskTracker übergeben.
- Der TaskTracker führt seine Aufgaben aus und wird dabei von JobTracker genau überwacht. Wenn der Job fehlschlägt, sendet JobTracker den Job einfach erneut an einen anderen TaskTracker. JobTracker selbst ist jedoch eine einzelne Fehlerquelle, dh, wenn ein Fehler auftritt, fällt das gesamte System aus.
- JobTracker aktualisiert seinen Status, wenn der Job abgeschlossen ist.
- Der Client-Anforderer kann jetzt Informationen von JobTracker abrufen.