2
我不知道为什么做这项工作:EMR星火工作,而不是在一个Java函数
public final class JavaSparkPi {
public static void main(String[] args) throws Exception {
SparkConf sparkConf = new SparkConf().setMaster("yarn-cluster").setAppName("mySparkApp");
JavaSparkContext jsc = new JavaSparkContext(sparkConf);
ArrayList<Integer> list = new ArrayList<>();
for(int i = 0; i < 10 ; i++){
list.add(i);
}
JavaRDD<Integer> dataSet = jsc.parallelize(list)
.map(s->2*s)
.map(s->5*s);
int weirdStuff= dataSet.reduce((a, b) -> (a + b)/2);
System.out.println("stuff is " + weirdStuff);
jsc.stop();
}
}
,为什么这并不:
public final class JavaSparkPi {
private void startWorkingOnMicroSpark() {
SparkConf sparkConf = new SparkConf().setMaster("yarn-cluster").setAppName("mySparkApp");
JavaSparkContext jsc = new JavaSparkContext(sparkConf);
ArrayList<Integer> list = new ArrayList<>();
for(int i = 0; i < 10 ; i++){
list.add(i);
}
JavaRDD<Integer> dataSet = jsc.parallelize(list)
.map(s->2*s)
.map(s->5*s);
int weirdStuff = dataSet.reduce((a, b) -> (a + b)/2);
System.out.println("weirdStuff is " + weirdStuff);
jsc.stop();
}
public static void main(String[] args) throws Exception {
JavaSparkPi jsp = new JavaSparkPi();
jsp.startWorkingOnMicroSpark();
}
}
我正在星火与EMR。我发现这两个项目之间唯一的区别在于,一个人的主要部分是火花部分,而另一个则没有。 我把它们两个都作为EMR中的spark应用程序推出,其中 - class JavaSparkPi 参数。
这里是失败statut:
Statut :FAILED
Raison :
Fichier journal :s3://mynewbucket/Logs/j-3AKSZXK7FKMX6/steps/s-2MT0SB910U3TE/stderr.gz
Détails:Exception in thread "main" org.apache.spark.SparkException: Application application_1501228129826_0003 finished with failed status
Emplacement JAR : command-runner.jar
Classe principale : Aucun
Arguments : spark-submit --deploy-mode cluster --class JavaSparkPi s3://mynewbucket/Code/SparkAWS.jar
Action sur échec : Continuer
,并有成功的一个:
Emplacement JAR : command-runner.jar
Classe principale : Aucun
Arguments : spark-submit --deploy-mode cluster --class JavaSparkPi
s3://mynewbucket/Code/SparkAWS.jar
Action sur échec : Continuer