hadoop-权威指南-为什么hdfs中的块这么大
我遇到了权威指南(HDFS概念-块)中的以下段落,无法理解 MapReduce中的映射任务通常一次只在一个块上运行,因此如果任务太少(集群中的节点数不足),则作业的运行速度将低于其他情况。 我想知道,与集群中的节点总数相比,当任务很少时,作业的速度会慢多少。假设集群中有1000个节点和3个任务(按任务划分,每个任务块都被发送到单个任务的一个节点上),那么获得结果所需的时间将始终少于包含1000个节点和1000个任务的场景,对吗hadoop-权威指南-为什么hdfs中的块这么大,hadoop,mapreduce,Hadoop,Mapreduce,我遇到了权威指南(HDFS概念-块)中的以下段落,无法理解 MapReduce中的映射任务通常一次只在一个块上运行,因此如果任务太少(集群中的节点数不足),则作业的运行速度将低于其他情况。 我想知道,与集群中的节点总数相比,当任务很少时,作业的速度会慢多少。假设集群中有1000个节点和3个任务(按任务划分,每个任务块都被发送到单个任务的一个节点上),那么获得结果所需的时间将始终少于包含1000个节点和1000个任务的场景,对吗 《权威指南》中给出的段落让我无法信服。你在书中引用的段落基本上是说“
《权威指南》中给出的段落让我无法信服。你在书中引用的段落基本上是说“尽可能多地利用节点”。如果你有1000个节点,只有3个块或任务,那么只有3个节点在你的任务上运行,而所有其他997个节点对你的任务都不起作用。如果您有1000个节点和1000个任务,并且这1000个节点中的每个节点都有部分数据,那么所有1000个节点都将用于您的任务。您还可以利用数据局部性,因为每个节点将首先处理本地数据。谢谢Celik,我了解节点的利用情况。但这和工作的缓慢有什么关系呢?一个工作由多个任务组成。每个作业的任务越多,利用节点越多。任务粒度越小,完成任务的时间就越平衡。其主要思想是在集群中拥有最少的空闲节点和最多的运行节点。