Hadoop 如果映射插槽跨机架启动,那么Job Tracker如何处理数据?

Hadoop 如果映射插槽跨机架启动,那么Job Tracker如何处理数据?,hadoop,mapreduce,Hadoop,Mapreduce,1。将任务分配给任务跟踪器进行处理时,作业跟踪器首先尝试在具有包含数据的数据节点的同一服务器上找到具有空闲插槽的任务跟踪器(以确保数据位置) 2.如果找不到此任务跟踪器,则在穿过机架定位任务跟踪器之前,它会在同一机架中的另一个节点上查找任务跟踪器 拇指规则:处理逻辑只会到达数据进行处理 假设任务跟踪器在相应处理数据不可用的机架上启动,那么在这种情况下,处理逻辑(程序)如何到达数据,而不是数据到达处理逻辑(程序)?当数据在本地不可用时,它们需要通过网络传输。数据局部性不是一个规则(远程节点无法运行

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

2.如果找不到此任务跟踪器,则在穿过机架定位任务跟踪器之前,它会在同一机架中的另一个节点上查找任务跟踪器

拇指规则:处理逻辑只会到达数据进行处理


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

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

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

生成的任务跟踪器将请求其他节点的数据。当然,传输将受到两个机架之间带宽的限制,延迟将是限制计算速度的一个因素。生成的任务跟踪器将从其他节点请求数据。当然,传输将受到两个机架之间带宽的限制,延迟将是限制计算速度的一个因素。