2016-05-24 14 views
-1

Ich führe den folgenden Spark-Java-Code.Spark Java Fehler: Fehler beim Initialisieren von SparkContext

import org.apache.spark.SparkConf; 
import org.apache.spark.api.java.JavaSparkContext; 
import org.apache.spark.sql.hive.HiveContext; 
import org.apache.spark.sql.DataFrame; 
import org.apache.spark.sql.SQLContext; 
import org.apache.hadoop.fs.*; 
public class Resource{ 
public static void main(String[] args) { 
SparkConf conf = new SparkConf().setAppName("cust data"); 
JavaSparkContext jsc = new JavaSparkContext(conf); 
HiveContext hiveSQLContext = new org.apache.spark.sql.hive.HiveContext(jsc.sc()); 
DataFrame df = hiveSQLContext.sql(" select * from emprecord"); 
df.registerTempTable("mytempTable");//creating temptable 
hiveSQLContext.sql("create table xyz as select * from mytempTable");//inserting into hie table 
jsc.close(
} 
} 

Compile:

[[email protected] SparkworkingJars]$ javac -cp $CLASSPATH Resource.java 

Warnung: /home/harsha/SparkworkingJars/spark-core_2.11- 1.6.1.jar (org/Apache/Funken/api/java/JavaSparkContextVarargsWorkaround.class): Hauptversion 51 ist neuer als 50, die höchste Hauptversion, die von diesem Compiler unterstützt wird. Es wird empfohlen, dass der Compiler upgraded.1 Warnung

RUN sein:

[[email protected] SparkworkingJars]$ java -cp $CLASSPATH Resource 

16/05/24 10:50:04 INFO spark.SparkContext: Laufen Spark-Version 1.6.1 16/05/24 10:50:05 WARN util.NativeCodeLoader: Die native-hadoop-Bibliothek kann nicht für Ihre Plattform geladen werden ... ggf. mit eingebauten-java-Klassen 16/05/24 10:50:05 ERROR spark.SparkContext: Fehler beim Initialisieren SparkContext. org.apache.spark.SparkException: Eine Master-URL muss in Ihrer Konfiguration bei org.apache.spark.SparkContext (SparkContext.scala: 401) bei org.apache.spark.api.java.JavaSparkContext festgelegt werden. (JavaSparkContext.scala: 59) bei Resource.main (Resource.java:15) 16/05/24 10:50:05 INFO spark.SparkContext: erfolgreich gestoppt SparkContext Ausnahme im Thread "Haupt" org.apache.spark .SparkException: Eine Master-URL muss in Ihrer Konfiguration bei org.apache.spark.SparkContext (SparkContext.scala: 401) bei org.apache.spark.api.java.JavaSparkContext festgelegt werden. (JavaSparkContext.scala: 59) bei Resource.main (Resource.java:15) Bitte helfen Sie mir, das Problem zu lösen.

Antwort

7

Sie müssen beim Starten einer Spark-Anwendung über Spark-Submit eine Master-URL angeben. Sie können entweder --master local[*] als Befehlszeilenargument (wenn Sie im Standalone-Modus LOCAL (oder anderen --master Optionen für den Betrieb auf Garn oder Mesos ausgeführt werden sollen). Referenz - Submitting Spark applications

Andernfalls könnten Sie auch Master in Ihrem Programm angeben

.
SparkConf conf = new SparkConf().setAppName("cust data").setMaster("local[*]"); 

Aber bevorzugte Art und Weise ist die ehemalige, wie Sie Ihren gleichen Job, um verschiedene Arten von Clustern starten können, wenn Sie den Master außerhalb des Quellcodes halten.

Verwandte Themen