Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 如何使用spark job server for Java项目?_Apache Spark - Fatal编程技术网

Apache spark 如何使用spark job server for Java项目?

Apache spark 如何使用spark job server for Java项目?,apache-spark,Apache Spark,我正在java项目中使用spark。 我尝试使用spark jobserver作为我们的Web服务。但是面临很多困难。 是否有使用spark job server的示例java项目 我的问题: 似乎只需要在java类中实现SparkJob并重写runJob方法。 但是我发现在runJob方法中,sparkcontext类型是sparkcontext,而不是我们在java项目中使用的JavaSparkContext public Object runJob(SparkContext sparkco

我正在java项目中使用spark。 我尝试使用spark jobserver作为我们的Web服务。但是面临很多困难。 是否有使用spark job server的示例java项目

我的问题: 似乎只需要在java类中实现SparkJob并重写runJob方法。 但是我发现在runJob方法中,sparkcontext类型是sparkcontext,而不是我们在java项目中使用的JavaSparkContext

public Object runJob(SparkContext sparkcontext, Config config) {
    // TODO Auto-generated method stub
    return null;
}
所以我在我们的作业课中将JavaSparkContext改为SparkContext。但我面临另一个问题。 请帮我纠正一下。谢谢

更改前:

JavaPairRDD<String, Row> pairData;

.................
JavaSchemaRDD schemaRDD = sqlContext.applySchema(pairData.values(), schema);
javapairdd-pairData;
.................
javaSchemardSchemardD=sqlContext.applySchema(pairData.values(),schema);
变动后

// because we I need to use SparkContext, so I changed JavaPairRDD<String, Row> to  RDD<Tuple2<String, Row>>.

RDD<Tuple2<String, Row>> pairData;
...............................


// I can't use pairData.values(), So I transform pairData to rowRDD


RDD<Row> rowRDD = pairData .map(new Function<Tuple2<String, Row>, Row>() {
 public Row call(Tuple2<String, Row> re)
 throws Exception {
 return re._2();
 }

  });
//因为我需要使用SparkContext,所以我将JavaPairRDD更改为RDD。
RDD配对数据;
...............................
//我无法使用pairData.values(),因此我将pairData转换为rowRDD
RDD rowd=pairData.map(新函数(){
公用行调用(Tuple2-re)
抛出异常{
返回re._2();
}
});
但是我发现.map方法有一个编译错误。而且我发现如果我在我们的作业类中将JavaSparkContext更改为SparkContext,我们就不能使用org.apache.spark.sql.api.java包下的任何类。
是否有java作业类示例?

有方法可以转换为
SparkContext
,反之亦然,请查看方法
JavaSparkContext.sc()
JavaSparkContext.fromSparkContext()
,在此处查看如何转换的示例。->

它令人困惑,但spark java是一个与apache spark或spark jobserver无关的不同项目。@simafengyun:嗨,你是如何让它最终运行的?我也需要完全一样的。