有没有一种方法可以让我在不同的Spark阶段使用不同数量的记忆?我有一个阶段,是真正的记忆饥饿和一堆不需要太多的记忆。现在我的工作是在工作的整个生命周期中保留大量的内存,以满足对内存的渴求阶段,尽管只需要一小部分时间的内存。
kxkpmulp1#
您可以潜在地启用动态执行器分配,为非常内存密集的阶段增加非常高的分区,然后减少分区。不幸的是,Yarn不接受容器的动态上浆,一旦要求,它们是静态的。动态分配至少允许您在进入内存密集型部分时启动一堆工作线程。
1条答案
按热度按时间kxkpmulp1#
您可以潜在地启用动态执行器分配,为非常内存密集的阶段增加非常高的分区,然后减少分区。不幸的是,Yarn不接受容器的动态上浆,一旦要求,它们是静态的。动态分配至少允许您在进入内存密集型部分时启动一堆工作线程。