Ich habe Apache Spark 1.1.1 für die Ausführung auf YARN (Hadoop-2.5.2) eingerichtet. Ich kann Programme mit dem Befehl spark-submit
ausführen.Ausführen eines Apache Spark Programms auf YARN von IntelliJ IDEA
Ich benutze IntelliJ IDEA 14. Ich bin in der Lage, Artefakte zu erstellen und das resultierende Glas mit spark-submit
ausführen.
Allerdings habe ich mich gefragt, ob es möglich ist, das gesamte Programm direkt von IntelliJ laufen zu lassen?
Ich habe die erforderlichen Bibliotheken hinzugefügt und das Hadoop-2.4-Profil aktiviert. Jedoch bekomme ich am Ende den folgenden Fehler
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.hadoop.security.UserGroupInformation.getCredentials()Lorg/apache/hadoop/security/Credentials;
at org.apache.spark.deploy.yarn.ClientBase$class.$init$(ClientBase.scala:58)
at org.apache.spark.deploy.yarn.Client.<init>(Client.scala:37)
at org.apache.spark.deploy.yarn.Client.<init>(Client.scala:43)
at org.apache.spark.scheduler.cluster.YarnClientSchedulerBackend.start(YarnClientSchedulerBackend.scala:91)
at org.apache.spark.scheduler.TaskSchedulerImpl.start(TaskSchedulerImpl.scala:141)
at org.apache.spark.SparkContext.<init>(SparkContext.scala:333)
at org.apache.spark.api.java.JavaSparkContext.<init>(JavaSparkContext.scala:53)
at WordCountWorkFlow.main(WordCountWorkFlow.java:24)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)
Kann mir jemand sagen, wo ich falsch liege?
Nein, tat ich nicht. Im Moment baue ich Artefakte meines Projekts und führe es mit Spark-Submit aus. – aps
Btw, als du Artefakte gebaut hast, welche Schritte hast du gemacht? Nehmen Sie die Abhängigkeiten auf? Ein einfaches Glas ist für mich 100MB groß ... – Stephane
Während ich die IntelliJ-Idee nutze, füge ich den Artefakten zusätzlich zu den vorgeschlagenen Maven-Bibliotheken die Kompilierausgabe hinzu. Die Größe beträgt etwa 13,8 KB. – aps