Apache spark 如何使用spark job server for Java项目?
我正在java项目中使用spark。 我尝试使用spark jobserver作为我们的Web服务。但是面临很多困难。 是否有使用spark job server的示例java项目 我的问题: 似乎只需要在java类中实现SparkJob并重写runJob方法。 但是我发现在runJob方法中,sparkcontext类型是sparkcontext,而不是我们在java项目中使用的JavaSparkContextApache 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
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:嗨,你是如何让它最终运行的?我也需要完全一样的。