当在Spark SparkContext中分配spark执行器时,当我在此之后加载数据时(例如使用sc.textFile()),spark如何确保数据局部性?我的意思是,在具有5000个服务器的大型集群中,执行器的位置在所有工作人员的子集上是随机的,并且火花甚至不知道在分配执行器时我的数据是什么和在哪里。这时,数据位置只能靠运气?或者是否有任何其他方法可以重新分配执行者或者......?
答案 0 :(得分:0)
经过几天的思考,我意识到火花的强度是处理迭代计算的能力,它应该只是第一次从硬盘读取。在那之后,一切都可以通过执行者来实现。记忆。执行者和#39;起初的位置不会影响太多。