【问题标题】:Unable to Execute More than a spark Job "Initial job has not accepted any resources"无法执行超过火花作业“初始作业未接受任何资源”
【发布时间】:2016-05-24 16:19:32
【问题描述】:

使用独立的 Spark Java 执行以下代码 sn-p,我得到的状态总是 WAITING 并出现以下错误。当我尝试添加 Print 语句时它不起作用。是否有任何我可能错过的配置来运行多个作业?

15/09/18 15:02:56 INFO DAGScheduler:从阶段 0 提交 2 个缺失的任务(SparkTest.java:143 的过滤器中的 MapPartitionsRDD[2])

15/09/18 15:02:56 INFO TaskSchedulerImpl:添加任务集 0.0 和 2 任务

15/09/18 15:03:11 WARN TaskSchedulerImpl:初始作业未接受 任何资源;检查您的集群 UI 以确保工作人员 注册并有足够的资源

15/09/18 15:03:26 WARN TaskSchedulerImpl:初始作业未接受 任何资源;检查您的集群 UI 以确保工作人员 注册并有足够的资源

15/09/18 15:03:41 WARN TaskSchedulerImpl:初始作业未接受 任何资源;检查您的集群 UI 以确保工作人员 注册并有足够的资源

JavaRDD<String> words = input.flatMap(new FlatMapFunction<String, String>()    //Ln:143
        {
            public Iterable<String> call(String x)
            {
                return Arrays.asList(x.split(" "));
            }
        });
// Count all the words
System.out.println("Total words is" + words.count())

【问题讨论】:

  • 您的基础架构是什么?你在使用集群吗?你用的是什么提交命令?请提供更多信息,以便我们提供帮助:)。
  • 它是一个独立的火花集群...我使用这个命令启动:./spark-submit ../lib/sparkapp.jar --class com.test.logs.spark.SparkTest
  • 你指定master吗?如果您可以编辑您的问题并在其中添加所有这些信息,那就太好了。

标签: java apache-spark


【解决方案1】:

此错误消息表示您的应用程序向集群请求的资源超出了集群当前所能提供的资源,即比集群中可用的内核或 RAM 更多。

其中一个原因可能是您已经有一个正在运行的作业用完所有可用的内核。

发生这种情况时,您的工作很可能正在等待另一个工作完成并释放资源。

您可以在 Spark UI 中进行检查。

【讨论】:

  • 我在 AWS EC2 上的提交 PySpark 应用程序方面面临类似问题 - 出现初始作业失败错误 - 由于资源不可用,应用程序进入等待状态。让我知道是否有任何解决方法。这里说明了问题 - stackoverflow.com/questions/38359801/… 目前没有其他作业正在运行,它仍然处于等待状态。 @benohead
猜你喜欢
  • 2017-11-18
  • 1970-01-01
  • 1970-01-01
  • 2020-02-01
  • 2015-06-10
  • 1970-01-01
  • 2016-12-11
  • 1970-01-01
相关资源
最近更新 更多