如何欺骗Spark(使用Yarn)来使用所有节点?

时间:2016-06-30 18:37:56

标签: apache-spark yarn bigdata

如果使用Yarn调度程序,Spark的任务执行似乎是以内存为中心的。如果它看到任务的内存可以适合更少的节点,那么它将不会使用所有可用节点来运行这些任务。有没有办法,我可以让纱线使用所有节点,而不是通过增加执行器/容器的内存来欺骗它?

1 个答案:

答案 0 :(得分:1)

可能导致更多工作分配的因素之一是" mapreduce.input.fileinputformat.split.maxsize&#34 ;.如果您想要更多任务(一个执行器有多个任务),那么减少它。您可能必须根据您的任务是否需要(内存/ CPU /磁盘)来取得平衡。

只有输入文件可拆分时,上述因素才有效。可拆分文件的示例是未压缩文本(csv / tsv),压缩/未压缩序列,压缩/未压缩orc / rc /镶木地板文件。

此外,您可能需要考虑spark dynamic allocation