小编dim*_*son的帖子

org.apache.spark.SparkException:作业因阶段失败而中止:来自应用程序的任务

我在独立群集上运行spark应用程序时遇到问题.(我使用spark 1.1.0版本).我通过命令成功运行主服务器:

bash start-master.sh 
Run Code Online (Sandbox Code Playgroud)

然后我按命令运行一个worker:

bash spark-class org.apache.spark.deploy.worker.Worker spark://fujitsu11:7077
Run Code Online (Sandbox Code Playgroud)

在master的web UI上:

http://localhost:8080  
Run Code Online (Sandbox Code Playgroud)

我明白了,那个主人和工人正在奔跑.

然后我从Eclipse Luna运行我的应用程序.我成功连接到cluster by命令

JavaSparkContext sc = new JavaSparkContext("spark://fujitsu11:7077", "myapplication");
Run Code Online (Sandbox Code Playgroud)

并且在该应用程序工作之后,但当程序实现以下代码时:

 JavaRDD<Document> collectionRdd = sc.parallelize(list);
Run Code Online (Sandbox Code Playgroud)

它崩溃了以下错误消息:

 org.apache.spark.SparkException: Job aborted due to stage failure: Task 7 in stage 0.0 failed 4 times, most recent failure: Lost task 7.3 in stage 0.0 (TID 11, fujitsu11.inevm.ru):java.lang.ClassNotFoundException: maven.maven1.Document
 java.net.URLClassLoader$1.run(URLClassLoader.java:366)
 java.net.URLClassLoader$1.run(URLClassLoader.java:355)
 java.security.AccessController.doPrivileged(Native Method)
 java.net.URLClassLoader.findClass(URLClassLoader.java:354)
  java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    java.lang.Class.forName0(Native Method)
    java.lang.Class.forName(Class.java:270)
    org.apache.spark.serializer.JavaDeserializationStream$$anon$1.resolveClass(JavaSerializer.scala:59)
    java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1612)
    java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1517)
    java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1771)
    java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
    java.io.ObjectInputStream.readArray(ObjectInputStream.java:1706)
    java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1344)
    java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
    java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1915)
    java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1798)
    java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1350)
    java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1990)
    java.io.ObjectInputStream.defaultReadObject(ObjectInputStream.java:500)
    org.apache.spark.rdd.ParallelCollectionPartition.readObject(ParallelCollectionRDD.scala:74) …
Run Code Online (Sandbox Code Playgroud)

apache-spark

12
推荐指数
2
解决办法
6万
查看次数

无法从应用程序连接到独立群集

我正在尝试从应用程序连接到Spark的独立集群.我想在一台机器上做这个.我按命令运行独立主服务器:

bash start-master.sh    
Run Code Online (Sandbox Code Playgroud)

然后我按命令运行一个worker:

bash spark-class org.apache.spark.deploy.worker.Worker spark://PC:7077 -m 512m
Run Code Online (Sandbox Code Playgroud)

(我为它分配了512 MB).

在master的web UI上:

http://localhost:8080
Run Code Online (Sandbox Code Playgroud)

我明白了,那个主人和工人正在奔跑.

然后我尝试使用以下命令从应用程序连接到群集:

JavaSparkContext sc = new JavaSparkContext("spark://PC:7077", "myapplication");
Run Code Online (Sandbox Code Playgroud)

当我运行应用程序时,它崩溃并显示以下错误消息:

4/11/01 22:53:26 INFO client.AppClient$ClientActor: Connecting to master spark://PC:7077...        
    14/11/01 22:53:26 INFO spark.SparkContext: Starting job: collect at App.java:115
    14/11/01 22:53:26 INFO scheduler.DAGScheduler: Got job 0 (collect at App.java:115)         with 2 output partitions (allowLocal=false)
    14/11/01 22:53:26 INFO scheduler.DAGScheduler: Final stage: Stage 0(collect at         App.java:115)
    14/11/01 22:53:26 INFO scheduler.DAGScheduler: Parents of final stage: List()
    14/11/01 22:53:26 INFO scheduler.DAGScheduler: Missing …
Run Code Online (Sandbox Code Playgroud)

apache-spark

5
推荐指数
1
解决办法
8287
查看次数

奇怪的 org.apache.spark.SparkException:由于阶段再次失败,作业中止

我正在尝试在独立模式下部署 Spark 应用程序。在这个应用程序中,我使用 tf-idf 向量训练朴素贝叶斯分类器。

我以与这篇文章类似的方式编写应用程序(LogisticRegression 的 Spark MLLib TFIDF 实现)不同之处在于,我获取每个文档,并将其标记化和规范化。

JavaRDD<Document> termDocsRdd = sc.parallelize(fileNameList).flatMap(new FlatMapFunction<String, Document>() {
        @Override
        public Iterable<Document> call(String fileName) 
        { 
            return Arrays.asList(parsingFunction(fileName)); 
        }        
    });
Run Code Online (Sandbox Code Playgroud)

所以每个 Document 副本都有 textField,它包含规范化的文档文本作为字符串列表(单词列表)和 labelField,其中包含文档的标签作为双精度值。parsingFunction 没有像 map 或 flatMap 等任何 Spark 函数。所以它不包含任何数据分发函数。

当我以本地模式启动我的应用程序时 - 它工作正常,并且在预测模式分类器中正确分类测试文档,但是当我尝试以独立模式启动它时 - 我遇到了一些麻烦 -

当我在一台机器上启动主节点和工作节点时 - 应用程序可以工作,但预测结果比在本地模式下更糟糕。当我在一台机器上启动 master 并在另一台机器上启动 worker 时 - 应用程序崩溃并出现以下错误:

14/12/02 11:19:17 INFO scheduler.TaskSetManager: Starting task 0.1 in stage 0.0 (TID 3, fujitsu10.inevm.ru, PROCESS_LOCAL, 1298 bytes)
14/12/02 11:19:17 INFO scheduler.TaskSetManager: Lost task 1.0 …
Run Code Online (Sandbox Code Playgroud)

tf-idf apache-spark apache-spark-mllib

5
推荐指数
0
解决办法
1万
查看次数

保存Spark的Naive Bayes分类器的训练模型

有人知道 - 是否可以保存Spark的Naive Bayes分类器的训练模型(例如在文本文件中),并在将来加载它(如果需要)?

谢谢.

java-8 apache-spark

1
推荐指数
1
解决办法
1676
查看次数

标签 统计

apache-spark ×4

apache-spark-mllib ×1

java-8 ×1

tf-idf ×1