Spark中Bug集锦

1.创建 SparkContext 时, 遇到的问题

错误描述: A master URL must be set in your configuration

1
2
3
4
5
6
7
8
9
10
//创建 spark 配置对象
val conf = new SparkConf()
conf.setAppName("MyWordCount_Scala")

//设置 master 属性
conf.setMaster("local")

// 通过 conf 创建 sc (注意, 这里一定要传入 conf, 否则就会报下面这个错误)
// A master URL must be set in your configuration
val sc = new SparkContext(conf)

2. 配置 Spark 独立模式时, 找不到 JAVA_HOME

错误描述: JAVA_HOME is not set

解决方法:

  • sbin目录中, 在spark-config.sh中加上 export JAVA_HOME=...
  • 分发到其它主机

3.一个 JVM 中如果存在多个 SparkContext

Exception in thread “main” org.apache.spark.SparkException: Only one SparkContext may be running in this JVM (see SPARK-2243). To ignore this error, set spark.driver.allowMultipleContexts = true. The currently running SparkContext was created at:

原因是因为, 每个 static 方法中, 都创建了 sc, 当然, 这里只是测试用, 可忽略, 见这里:

https://github.com/airpoet/bigdata/blob/master/Spark_Project/SparkDemo-1/src/main/java/com/rox/spark/java/TransfromationOperation.java

如果帮到你, 可以给我赞助杯咖啡☕️
0%