如果Map插槽在机架中启动,那么Job Tracker如何处理数据?

时间:2017-06-12 06:07:34

标签: hadoop mapreduce

1. 当将任务分配给任务跟踪器进行处理时,作业跟踪器首先尝试在同一服务器上找到一个具有空闲插槽的任务跟踪器,该服务器具有包含数据的数据节点(到确保数据的位置)

2. 如果找不到此任务跟踪器,它会在同一机架中的另一个节点上查找任务跟踪器,然后才能通过机架找到任务跟踪器。

Thumb规则:处理逻辑只会到达要处理的数据。

假设任务跟踪器在相应处理数据不可用的机架上启动,那么在这种情况下,处理逻辑(程序)如何到达数据,而不是数据到达处理逻辑(程序)?

1 个答案:

答案 0 :(得分:0)

当数据在本地不可用时,需要通过网络传输。数据局部性不是规则(远程节点不能运行程序),而是一个目标(总是更喜欢包含数据的本地节点来运行与此数据块相关的进程),因为传输数据(许多GB)更多比转移代码(几KB)更贵。