运行spark-shell时遇到问题。我每次都收到以下错误消息:
所需的执行程序内存(1024 + 384 MB)高于此群集的最大阈值(1024 MB)!
我做了以下步骤来解决问题,但没有任何结果。
奇怪的是,火花壳在重启服务后工作了一次。在此尝试之后,spark-shell不会加载正确的执行程序内存。它每次以1GB
开始希望有人能帮我解决问题。
亲切的问候
hbenner89
答案 0 :(得分:1)
您是否尝试过分配超过1g的内存,因为它抱怨它需要更多内存。
我会尝试用2g作为测试。
bin / spark-shell --executor-memory 2g --master yarn
务必为操作系统留一个小垫子,这样它就不会占用整个系统的内存。
此选项也适用于您一直使用的独立模式,但如果您一直使用ec2脚本,我们设置" spark.executor.memory"在conf / spark-defaults.conf中自动执行此操作,因此您不必每次都在命令行上指定它。你也可以在YARN做同样的事。
答案 1 :(得分:1)
感谢您的回答。帮助理解了内存选项。
我发现了问题:问题不在于执行程序 - 内存。我将yarn.nodemanager.resource.memory-mb更改为2GB。这一改变后一切正常。
答案 2 :(得分:1)
我遇到了同样的问题,将执行程序内存减少到512MB并且工作正常。假设512MB足以满足您的计划。
spark-submit --proxy-user spark --master yarn --deploy-mode client --name pi --conf "spark.app.id=pi" --driver-memory 512M --executor-memory 512M pi.py