【发布时间】:2020-11-03 10:53:15
【问题描述】:
我运行 pyspark 作业进行一些转换并将结果保存到 hdfs 中的 orc 文件中,我的 spark conf 是:
--driver-memory 12G --executor-cores 2 --num-executors 8 --executor-memory 32G ${dll_app_spark_options} --conf spark.kryoserializer.buffer.max=2047 --conf spark.driver.maxResultSize=4g --conf spark.shuffle.memoryFraction=0.7 --conf spark.yarn.driver.memoryOverhead=4096 --conf spark.sql.shuffle.partitions=200
我的工作总是失败,因为 Yarn kill executor for memory(超过内存限制)
要保存的DataFrame包含100万行和400列(列数组类型(Float) 我想减少存储内存,我试过 spark.shuffle.memoryFraction=0.7 但它给出了相同的结果 有什么想法吗?
【问题讨论】:
-
我认为使用这个参数 spark.memory.storageFraction 你可以调整你的存储内存,对于 Spark UI 检查这个stackoverflow.com/questions/43512231/…
标签: apache-spark pyspark apache-spark-sql