Spark EMR:需要配置多个sparksubmit在EMR clus中并行工作

2024-10-02 22:30:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我是AWS EMR的新手,我面临着一个问题:让多个spark提交并行运行。在

我有一些作业计划每10分钟运行一次,还有一项作业每6小时运行一次。集群有足够的资源同时运行它们,但默认配置将它们放在单个根目录下。使它们按顺序运行的默认队列。这不是我想要的。 我必须在配置文件中写入什么?在

我尝试过将队列“1”、“2”和“3”添加到根队列中(在yarn中-站点.xml)并将每个作业提交到单独的队列中。但它们仍然按顺序运行(不是我想要的那样并行)。在

spark-submit --queue 1 --num-executors 1  s3://bucket/some-job.py

spark-submit --queue 2 --num-executors 1  s3://bucket/some-job.py

Tags: pyawss3bucket队列queue顺序作业
2条回答

我找到了一个意想不到的解决办法。在

似乎当前的Hadoop文档并没有反映awsemr中纱线的正确配置,所以我使用了试错法来找到一种使其工作的方法。在

我用的不是容量调度程序,而是公平调度程序。但它仍然将所有应用程序放在同一个队列(“池”)中,所以我不得不手动将每个作业调度到单独的队列中,并配置这些队列以占用适当数量的资源。 这就是我所做的:

纱线-站点.xml在

<property>
   <name>yarn.resourcemanager.scheduler.class</name>
  <value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler</value>
</property>

<property>
<name>yarn.scheduler.fair.allocation.file</name>
<value>fair-scheduler.xml</value>
</property>

<property>
<name>yarn.scheduler.fair.preemption</name>
<value>true</value>
</property>

公平调度的目的-公平地调度任务和分配资源。但是(出乎意料的是,lmao)如果没有启用抢占,它就不会这样做。第一个任务会吃掉所有的资源,如果你明确不要求的话,它在完成之前不会把它们给别人。在

我就是这样做的:

公平的-调度程序.xml在

^{pr2}$

现在我有2个队列(大队列和小队列),小队列可以运行4个小任务,大队列可以同时运行2个大任务。大队列的权重更大,因此需要更多的资源。如果小队列占用了超过40%的资源,其他队列就会开始“国有化”它并带走资源。大队列(60%)也一样。 我不确定每个队列中发生了什么,但似乎资源试图在应用程序之间平均分配。在

我的新年愿望是hadoop和EMR的详细文档。在

简单地说,给出队列的配置。创建EMR时,可以为纱线调度员. 如果您有首选配置,请指定它。For example

"Classification": "capacity-scheduler",
"Properties": {
     "yarn.scheduler.capacity.root.queues": "default, gold, silver, bronze"
}

这会给你几个排队槽。在


另一个选择是修改已经运行的EMR。与上面类似,但是可以通过awscli或其他sdk来完成。See the article。在

它使用命令

^{pr2}$

some.json为形式,如:

{
   "ClusterId":"j-MyClusterID",
   "InstanceGroups":[
      {
         "InstanceGroupId":"ig-MyMasterId",
         "Configurations":[
            {
               "Classification":"capacity-scheduler",
               "Properties":{
                  "yarn.scheduler.capacity.root.queues":"default, bronze, silver, gold"
               },
               "Configurations":[]
            }
         ]
      }
   ]
}

相关问题 更多 >