1. 数据本地化背景 数据本地化对于Spark Job性能有着巨大的影响。如果数据以及要计算它的代码在一起(一个work节点上),那么性能会非常的高。但是如果数据和计算它的代码是分开的,那么其中之一必须到另外一方的机器上,通常来说移动计算比移动数据速度要快,因为代码很小。Spark也正是基于这个数据本地化的原则来构建task调度算法的。 2. 源代码 package org.apache.spark.scheduler import org.apache.spark