手动指定Spark执行程序的数量

我有1000个实木复合地板文件,并且我希望在中间阶段每个文件都由一名执行者处理。有没有一种方法可以手动分配此属性?默认情况下,spark最终为该作业创建34个任务,最终导致偏斜

yangzhihonggenen 回答:手动指定Spark执行程序的数量

您可以在输入的DataFrame / RDD上执行repartition并在生成的DF / RDD上执行操作。

changedDF = inputDF.repartition(500)

使用changedDF而不是使用inputDF来执行您的操作,应该会得到500个任务。

如果需要,在DataFrame中,您还可以提及要重新分区changedDF = inputDF.repartition(inputDF.col1)的列的列表

本文链接:https://www.f2er.com/3164424.html

大家都在问