gpt4 book ai didi

hadoop - 在 Spark-on-Yarn 中配置执行器和驱动程序内存

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

我对在 Spark-1.5.2 中配置执行程序和驱动程序内存感到困惑。

我的环境设置如下:

3 Node MAPR Cluster - Each Node: Memory 256G, 16 CPU 
Hadoop 2.7.0
Spark 1.5.2 - Spark-on-Yarn

输入数据信息:

来自 Hive 的 460 GB Parquet 格式表我正在使用 spark-sql 通过 spark-on-yarn 查询 hive 上下文,但它比 Hive 慢很多,而且我不确定 Spark 的内存配置是否正确,

这些是我的配置,

    export SPARK_DAEMON_MEMORY=1g
export SPARK_WORKER_MEMORY=88g

spark.executor.memory 2g
spark.logConf true
spark.eventLog.dir maprfs:///apps/spark
spark.eventLog.enabled true
spark.serializer org.apache.spark.serializer.KryoSerializer
spark.driver.memory 5g
spark.kryoserializer.buffer.max 1024m

如何避免Spark java.lang.OutOfMemoryError: Java堆空间异常和GC 开销限制超出异常!! ???

非常感谢您在这方面的帮助!

最佳答案

乍一看,您正在用尽执行程序的内存。我建议增加他们的内存力。

请注意,SPARK_WORKER_MEMORY 仅在独立模式下使用。 SPARK_EXECUTOR_MEMORY 用于 YARN 模式。

如果您没有在集群上运行任何其他东西,您可以尝试以下配置:

spark.executor.memory   16g
spark.executor.cores 1
spark.executor.instances 40
spark.driver.memory 5g (make it bigger if expected
final result dataset is larger)

我不建议设置较大的执行程序内存,因为这通常会增加 GC 时间。我看到的另一件事是,这些实例是内存优化的。如果这适合您的情况,请三思。

关于hadoop - 在 Spark-on-Yarn 中配置执行器和驱动程序内存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45059390/

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