我使用火花來執行一些計算,但希望它從Java應用程序提交。它使用時提交使用火花提交腳本正確使用。有沒有人試圖做到這一點?如何在不使用spark-submit的情況下將java程序內的spark工作提交給standalone spark cluster?
謝謝。
我使用火花來執行一些計算,但希望它從Java應用程序提交。它使用時提交使用火花提交腳本正確使用。有沒有人試圖做到這一點?如何在不使用spark-submit的情況下將java程序內的spark工作提交給standalone spark cluster?
謝謝。
不要忘記將含有代碼的胖JAR添加到上下文中。
val conf = new SparkConf()
.setMaster(...)
.setAppName(...)
.setJars("/path/to/code.jar")
val sc = new SparkContext(conf)
只要你有一個主機和可用的工作開始了,你應該可以,如果你在你的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是用來運行JUnit測試JavaSparkContext而不必使用spark-submit腳本。雖然我在DataFrame上執行操作時遇到了問題(不確定是否與此相關)。
我已經做了同樣的事情,但沒有運氣。如果我使用spark-submit來運行它,那麼它的工作原理是完美的。您是否試圖執行一些轉換? @insomniak – 2015-04-03 04:09:22
對我來說,它提供這些選項時工作:-Dspark.driver.host = -Dspark.driver.port = 50000 –
2016-09-29 06:33:13
我可以請一個Java代碼來運行一個火花應用程序。 – Nandakishore 2017-03-24 03:30:46