这次主要讲一下spark的提交具体操作和流程。原来一直用,也没怎么深入查看,那么这次就来仔细看一下提交的学问。跟我们以前一样,我们以官网下手。这里我不在把英文贴上,直接进行。
在spark的bin文件夹下的spark-submit脚本是用来提交应用的。它能够通过一个统一的接口来使用所有spark支持的集群管理器,所以我们不必单独配置每一个应用。
如果你的代码依赖其他的项目,那么你需要与应用程序一起打包他们,为了把代码分布到spark集群中。想要实现这一点,你需要打一个jar包包含你的程序还有他所有的依赖。SBT和Maven都有该组件插件。当创建一个组合jar包时,把spark和hadoop列为provided的依赖。他们之所有被设置为provided是因为在集群管理器运行的时候这些都会被提供。一旦你有了组合jar包,那么你就可以调用bin/spark-submit的脚本来提交你的应用了。
该脚本支持不同的集群管理器和发布模式: