gpt4 book ai didi

scala - 给定核心和执行程序的数量,如何确定 spark 中 rdd 的分区数量?

转载 作者:可可西里 更新时间:2023-11-01 16:41:11 27 4
gpt4 key购买 nike

10 个节点集群有 20 个执行器和代码读取一个包含 100 个文件的文件夹的分区数是多少?

最佳答案

它在您运行的不同模式下是不同的,您可以使用 spark.default.parallelism 设置对其进行调整。来自 Spark 文档:

For operations like parallelize with no parent RDDs, it depends on the cluster manager:

Local mode: number of cores on the local machine
Mesos fine grained mode: 8
Others: total number of cores on all executor nodes or 2, whichever is larger

相关文档链接: http://spark.apache.org/docs/latest/configuration.html#execution-behavior

您可以根据正在读取的数据自行更改分区数。一些 Spark api 为分区数提供了额外的设置。

按照@Sandeep Purohit 的说法进一步检查创建了多少分区

rdd.getNumPartitions

这将导致正在创建的分区数量!

您还可以在创建分区后使用两个 Api 更改分区数,即:合并和重新分区

合并和重新分区链接:Spark - repartition() vs coalesce()

关于scala - 给定核心和执行程序的数量,如何确定 spark 中 rdd 的分区数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40867373/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com