Feilsøking av gnistprogramfeil: En hoved-URL må angis i konfigurasjonen

Spark Program Error Troubleshooting



I dag testet jeg gnistprogrammet lokalt og klikket for å kjøre hovedmetoden, og følgende feil ble rapportert: (gnistversjon er 2.1.1)

org.apache.spark.SparkException: A master URL must be set in your configuration at org.apache.spark.SparkContext.(SparkContext.scala:379) at org.apache.spark.SparkContext$.getOrCreate(SparkContext.scala:2320) at org.apache.spark.sql.SparkSession$Builder$$anonfun$6.apply(SparkSession.scala:868) at org.apache.spark.sql.SparkSession$Builder$$anonfun$6.apply(SparkSession.scala:860) at scala.Option.getOrElse(Option.scala:121) at org.apache.spark.sql.SparkSession$Builder.getOrCreate(SparkSession.scala:860) at com.gimc.dsp.spark.main.dsp.OrderMappingMain.main(OrderMappingMain.java:60) 19/06/12 11:32:33 INFO SparkContext: Successfully stopped SparkContext Exception in thread 'main' org.apache.spark.SparkException: A master URL must be set in your configuration at org.apache.spark.SparkContext.(SparkContext.scala:379) at org.apache.spark.SparkContext$.getOrCreate(SparkContext.scala:2320) at org.apache.spark.sql.SparkSession$Builder$$anonfun$6.apply(SparkSession.scala:868) at org.apache.spark.sql.SparkSession$Builder$$anonfun$6.apply(SparkSession.scala:860) at scala.Option.getOrElse(Option.scala:121) at org.apache.spark.sql.SparkSession$Builder.getOrCreate(SparkSession.scala:860) at com.gimc.dsp.spark.main.dsp.OrderMappingMain.main(OrderMappingMain.java:60)

Årsaken til denne feilen er at det ikke er noen master som programmet kjører på, og tilsvarende konfigurasjon er nødvendig.



Mestrene som ble gitt til gnist er som følger:



local Local single thread local[K] Local multithreading (specify K cores) local[*] Local multithreading (specify all available cores) spark://HOST:PORT To connect to the specified Spark standalone cluster master, you need to specify the port. mesos://HOST:PORT To connect to the specified Mesos cluster, you need to specify the port. The yarn-client client mode connects to the YARN cluster. Need to configure HADOOP_CONF_DIR. The yarn-cluster cluster mode connects to the YARN cluster. Need to configure HADOOP_CONF_DIR.

Det er to måter å konfigurere gnistmasteren lokalt:



1. Konfigurer gjennom gnistkode

Den kan konfigureres med følgende kode:

//java version SparkConf conf = new SparkConf() conf.setMaster('local') //Local single-threaded operation conf.setAppName('testJob') JavaSparkContext sc = new JavaSparkContext(conf) //scala version val sparkConf = new SparkConf() sparkConf.setMaster('local') //Local single-threaded operation sparkConf.setAppName('testJob') val sc = new SparkContext(sparkConf)

2. Konfigurer ved å sette JVM-driftsparametere



Klikk på rediger konfigurasjon på ideen, velg prosjektet som må konfigureres med parametere til venstre, og skriv deretter inn '-Dspark.master = local' i VM-alternativene til høyre for å instruere dette programmet om å kjøre lokalt i en enkelt tråd , bare kjør den igjen.