机架本地Map任务和数据本地Map任务之间有什么区别?

vqlkdk9b  于 2021-06-03  发布在  Hadoop
关注(0)|答案(2)|浏览(356)

当我运行“hadoop job-status ”时,输出以下一些列表。

Rack-local map tasks=124
Data-local map tasks=6

机架本地Map任务和数据本地Map任务之间有什么区别?

7gcisfzg

7gcisfzg1#

在数据本地任务中,不需要复制任何内容。这是因为块在物理上与计算在同一台服务器上。
下一层是机架本地任务,这里必须复制数据,因为没有所需块的本地副本可用。请注意,rack local仅在网络的rack local交换机内进行复制。
还有一种最坏的情况,即数据既不在本地也不在同一机架上可用。所以这必须通过两个交换机复制到运行计算的主机上。我不知道有没有这个柜台,但基本上这个一定是 #all tasks - #data-local tasks - #rack-local tasks .

nom7f22z

nom7f22z2#

我想指出的是,在同一机架内的计算机之间提供千兆(或更快)网络比为更多的计算机提供网络要便宜得多。
根本原因是以太网交换机不可扩展,而且我们不能以合理的价格为数百个端口提供这样的交换机。
因为hadoop尝试至少在同一机架上运行任务,如果不能在存储数据的节点上运行的话。

相关问题