我正在使用spark来执行一些计算,但希望它从java应用程序提交。当使用spark-submit脚本提交时,它正常工作。有人试图这样做吗?
感谢。
答案 0 :(得分:5)
不要忘记将包含代码的胖JAR添加到上下文中。
val conf = new SparkConf()
.setMaster(...)
.setAppName(...)
.setJars("/path/to/code.jar")
val sc = new SparkContext(conf)
答案 1 :(得分:2)
只要你有一个master和可用的worker已经启动,你应该能够在java应用程序中拥有以下内容:
String master = "spark://IP:7077"; //set IP address to that of your master
String appName = "Name of your Application Here";
SparkConf conf = new SparkConf().setAppName(appName).setMaster(master);;
JavaSparkContext sc = new JavaSparkContext(conf);
我能够在IntelliJ中运行使用JavaSparkContext的junit测试,而无需使用spark-submit脚本。我在对DataFrame执行操作时遇到了问题(不确定这是否相关)。