我想从我的笔记本电脑提交spark python应用程序。我有一个独立的火花簇,主机运行在一些可见的IP(MASTER_IP
)。在我的笔记本电脑上下载并解压缩Spark之后,我就让它工作了
./bin/spark-submit --master spark://MASTER_IP:7077 ~/PATHTO/pi.py
据我所知,它是默认为客户端模式(与群集模式相对)。根据Spark(http://spark.apache.org/docs/latest/submitting-applications.html) - "只有YARN支持Python应用程序的集群模式。"由于我没有使用YARN,我必须使用客户端模式。
我的问题是 - 我是否需要在笔记本电脑上下载所有Spark?或者只是几个图书馆?
我想让我的团队的其他成员使用我的Spark群集,但我希望他们尽可能少地完成工作。他们不需要设置群集。他们只需要提交工作。让他们下载所有的Spark似乎有点矫枉过正。
那么,他们需要的最低要求是什么?
答案 0 :(得分:0)
我这里的spark-1.5.0-bin-hadoop2.6
包是304MB解包。超过一半,175MB由主要的Spark内容spark-assembly-1.5.0-hadoop2.6.0.jar
组成。除非你想编译自己的软件包,否则你无法摆脱这种情况。其余的很大一部分是spark-examples-1.5.0-hadoop2.6.0.jar
,113MB。删除它并压缩备份是无害的,并且已经为您节省了很多。
然而,使用一些工具,他们不必直接使用spark包,如spark-jobserver
(从未使用但从未听过有人对当前状态非常积极)或{{1} (需要你自己的代码仍与它接口,或者与笔记本一起使用时(见下文)与替代品相比有限),正如Reactormonk建议的那样,它们更容易使用。
在这个意义上要做的一件好事就是设置对笔记本的访问权限。当您使用Python时,IPython with a PySpark profile最容易设置。其他替代方案是Zeppelin和spark-notebook(我最喜欢的)使用Scala。