gpt4 book ai didi

scala - Spark 应用程序仅使用 1 个执行程序

转载 作者:行者123 更新时间:2023-12-02 09:23:42 27 4
gpt4 key购买 nike

我正在使用以下代码运行一个应用程序。我不明白为什么只有 1 个执行器在使用,即使我有 3 个。当我尝试增加范围时,我的工作失败导致任务管理器丢失执行器。在总结中,我看到随机写入的值,但随机读取为 0(可能是因为所有数据都在一个节点上,不需要发生随机读取来完成作业)。

val rdd: RDD[(Int, Int)] = sc.parallelize((1 to 10000000).map(k => (k -> 1)).toSeq)
val rdd2= rdd.sortByKeyWithPartition(partitioner = partitioner)
val sorted = rdd2.map((_._1))
val count_sorted = sorted.collect()

编辑:我增加了执行程序和驱动程序的内存和内核。我还将执行者的数量从 4 改为 1。这似乎有所帮助。我现在在每个节点上看到随机读取/写入。

最佳答案

看起来您的代码最终只有一个 RDD 分区。您应该将 RDD 的分区增加到至少 3 个以利用所有 3 个执行器。

关于scala - Spark 应用程序仅使用 1 个执行程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39603659/

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