我尝试在我的java应用程序中“运行”spark作业,搜索,我发现了以下两种方法:ClientsArguments
和SparkLauncher
。
有人能给我解释一下这两者之间的区别吗?启动和提交作业/应用程序Spark之间的区别?谢谢。
发布于 2017-06-26 21:46:38
SparkLauncher只是一个用于spark-submit
的包装库,它将你的SparkLauncher
代码转换成spark-submit
script,然后触发作业。
这个机制和spark-submit
脚本是一样的,如果你看看SparkLauncher的源代码,它使用ProcessBuilder
来构造外壳。
如果要使用SparkLauncher
,则需要指定$JAVA_HOME
、$SPRAK_HOME
等基本参数。SparkLauncher
有一些限制,你的SparkLauncher
运行的机器必须有一个$JAVA_HOME
和$SPARK_HOME
(火花库),用于SparkLauncher
定位脚本和相关的依赖项。对于像CloudFoundry这样的云环境来说,这是很软的,甚至是不可能的。
您可以假设SparkLauncher
等于spark-submit
脚本,您可以选择客户端或主模式、本地模式或纱线模式。
ClientsArguments
是一个用于纱线脚本的类,它只适用于纱线模式。
https://stackoverflow.com/questions/39201487
复制