spark读取nebula数据提交jar包执行报错

nebula版本号:3.5.0
pom加上nebula-algorithm或者nebula-spark-connector本地local模式可以执行,打jar包提交执行报错
Caused by:org.apache.spark.SparkException:Dynamic allocation of executors requires the external shuffle service. You may enable this through spark.shuffle.service.enabled.
在spark-defaults.conf配置文件里加上spark.shuffle.service.enabled=true就会一直。。。。。。。。这样

可以查看下你的spark集群中是否有其他未执行完成的任务,比如一直hang的spark-shell 进程。

如果要配置spark.shuffle.service.enabled,还要配一下 spark.dynamicAllocation.enabled Job Scheduling - Spark 3.5.0 Documentation

2 个赞

spark.shuffle.service.enabled和 spark.dynamicAllocation.enabled都配置了,都为true,在运行的时候一直在running状态,过了一段时间就报UNHOST,执行其他wordcount任务都可以,加上nebula-algorithm或者nebula-spark-connector依赖就会报如上问题

确定没有其他为执行完成的任务,spark是maxcomputer-spark-2.4.5,scala版本2.11.12,nebula-algorithm版本3.1.0

打jar包提交执行的命令 发一下吧

1 个赞

好的,命令是spark-submit --master yarn-cluster --class Spark_Submit D:\Personal\Desktop\baskerball\Demo-1.0-SNAPSHOT-shaded.jar

执行命令的问题吗

执行wordcount可以执行,加上这个pom依赖就不行

你的命令上加一下资源配置试试吧