在本地IDE里直接运行spark程序操作远程集群
一般运行spark作业的方式有两种:
本机调试,通过设置master为local模式运行spark作业,这种方式一般用于调试,不用连接远程集群。
集群运行。一般本机调试通过后会将作业打成jar包通过spark-submit提交运行。生产环境一般使用这种方式。
本文介绍第3种方式:
- 在本地将spark作业运行到远程集群中。这种方式比较少见,很多人认为不可行,包括我之前也是。经过试验发现是可行的,可以满足一些特定场景的需求。原理方面,可以参考这篇博客,
http://blog.jasonding.top/2015/07/08/Spark/%E3%80%90Spark%E3%80%91Spark%E5%BA%94%E7%94%A8%E6%89%A7%E8%A1%8C%E6%9C%BA%E5%88%B6/,应该是将Driver运行在了本地,分布式计算则分发给各个节点。
操作方法
1.设置master
两种方式:
- 在程序中设置
SparkConf conf = new SparkConf()
.setAppName</