我们(一个工程团队)正在运行使用YARN
和Spark
的EMR
群集。通常发生的事情是,当一个用户提交重型内存密集型作业时,它会抓住所有可用的内存,然后所有随后的用户提交的作业都必须等待该内存才能清除(我知道autoscaling
将解决此问题一定程度,我们正在研究这一点,但是即使群集为autoscale
d,我们也希望避免单个用户占据所有内存)。
是否有一种配置纱线的方法,使得任何应用程序(Spark
或其他)可能不会占用超过75%的可用内存?
谢谢
根据文档,您可以使用参数管理分配给执行人的内存量:spark.executor.memory.memory