如何根据输入数据/文件大小配置spark集群(内存、内核、执行器)?

voase2hg  于 2022-11-25  发布在  Apache
关注(0)|答案(1)|浏览(173)

有一些公式可用于根据集群可用资源确定Spark作业的“执行器内存”和“执行器数量”以及“执行器内核”,是否有任何公式可用于单独计算数据大小。

case 1: what is the configuration if: data size < 5 GB
case 2: what is the configuration if: 5 GB > data size < 10 GB
case 3: what is the configuration if: 10 GB > data size < 15 GB
case 4: what is the configuration if: 15 GB > data size < 25 GB
case 5: what is the configuration if: data size < 25 GB

尝试从多个来源查找此问题,但未得到任何适当的解释。

wj8zmpe1

wj8zmpe11#

指导您选择正确资源量的第一个要素不一定是数据大小,而是分区的数量-一般经验法则是最佳分区数量应等于或大于执行器中的内核数量-您可以在this线程中了解更多信息。
第二件事是,如果您要显式地缓存DataFrame(cache方法)-在这种情况下,RAM的数量也应该足以存储其中的所有数据(否则数据将溢出到存储中,这会抵消缓存的好处)。Thread与本主题相关。

相关问题