Definición - ¿Qué significa JobTracker?
JobTracker es un demonio que se ejecuta en el motor MapReduce de Apache Hadoop. JobTracker es un servicio esencial que distribuye todas las tareas de MapReduce a los diferentes nodos del clúster, idealmente a aquellos nodos que ya contienen los datos, o al menos están ubicados en el mismo bastidor que los nodos que contienen los datos.
Techinfo explica JobTracker
JobTracker es el servicio dentro de Hadoop que es responsable de aceptar las solicitudes de los clientes. Los asigna a TaskTrackers en DataNodes donde los datos requeridos están presentes localmente. Si eso no es posible, JobTracker intenta asignar las tareas a TaskTrackers dentro del mismo rack donde los datos están presentes localmente. Si por alguna razón esto también falla, JobTracker asigna la tarea a un TaskTracker donde existe una réplica de los datos. En Hadoop, los bloques de datos se replican en DataNodes para garantizar la redundancia, de modo que si un nodo del clúster falla, el trabajo no falla también.
Proceso de JobTracker:
- JobTracker recibe las solicitudes de trabajo de las aplicaciones cliente,
- JobTracker consulta el NameNode para determinar la ubicación de los datos requeridos.
- JobTracker localiza los nodos TaskTracker que contienen los datos o al menos están cerca de los datos.
- El trabajo se envía al TaskTracker seleccionado.
- TaskTracker realiza sus tareas mientras JobTracker lo supervisa de cerca. Si el trabajo falla, JobTracker simplemente vuelve a enviar el trabajo a otro TaskTracker. Sin embargo, JobTracker en sí es un punto único de falla, lo que significa que si falla todo el sistema se cae.
- JobTracker actualiza su estado cuando se completa el trabajo.
- El solicitante del cliente ahora puede sondear información de JobTracker.