spark.scheduler.allocation.file
在Spark中,spark.scheduler.allocation.file
配置项指定了一个用于公平调度器的XML配置文件。该配置文件定义了作业池(pools)以及这些池的属性,包括其优先级,权重,和可选的最小份额。
公平调度器允许你将Spark作业分配给多个“池”,并控制每个池的资源使用情况。例如,一些池可能被赋予更高的优先级或权重,这样它们就可以获得更多的CPU时间。这对于共享Spark集群的环境非常有用,因为它可以阻止某一个作业使用所有可用资源,而另一些作业只能等待。
这个XML文件的路径是相对于你的Spark目录的,除非提供了绝对路径。默认情况下,系统会查看$SPARK_HOME/conf/fairscheduler.xml
文件。
以下是一个简单的fairscheduler.xml文件示例:
<allocations>
<pool name="production">
<schedulingMode>FAIR</schedulingMode>
<weight>1</weight>
<minShare>2</minShare>
</pool>
<pool name="test">
<schedulingMode>FAIR</schedulingMode>
<weight>2</weight>
<minShare>3</minShare>
</pool>
</allocations>
在上述示例中,我们为"production"和"test"两个作业池设置了公平调度模式,权重和最小份额。
更多信息请参考Spark官方文档中的Job Scheduling部分。