驱动程序是否总是必须在主节点上 (Yes/No)?阿帕奇火花
Is it always the case that Driver must be on a Master node (Yes/No) ? Apache-Spark
Driver(作为运行主节点的程序)是否总是必须在主节点上?
例如,如果我用一个主节点和两个工作节点设置 ec2,我的代码是否必须从主节点 EC2 实例执行?
如果答案是否定的,那么设置驱动程序位于 ec2 主节点之外的系统的最佳方法是什么(比方说,驱动程序来自我的计算机 运行,而 Master 和 Workers在 EC2 上)? 我是否必须始终使用 spark-submit,或者我可以从 IDE(例如 Eclipse 或 IntelliJ IDEA)中执行此操作吗?
如果答案是肯定的,那么了解更多信息的最佳参考资料是什么(因为我需要提供某种证明)?
非常感谢您的回答,不胜感激!
不,它不一定要在 master 上。
使用 spark-submit
你可以使用 deploy-mode 来控制你的 driver 是 运行 的方式(作为 client
,在机器上你 运行 提交(可以是 master 或其他),或者作为 cluster
,提交给工人)。
工作人员和 driver 之间存在 network communication,所以您希望它 'close' 到工作人员,而不是通过 WAN。
您可以 run from inside 一个可以从您的 IDE 访问的 repl (spark-shell
)。如果您使用的是像 Clojure 这样的动态语言,您也可以只创建一个 SparkContext
引用(通过 master
)一个本地集群,或者您想要将作业放入的集群,然后通过回复实际上这并不容易。
Driver(作为运行主节点的程序)是否总是必须在主节点上?
例如,如果我用一个主节点和两个工作节点设置 ec2,我的代码是否必须从主节点 EC2 实例执行?
如果答案是否定的,那么设置驱动程序位于 ec2 主节点之外的系统的最佳方法是什么(比方说,驱动程序来自我的计算机 运行,而 Master 和 Workers在 EC2 上)? 我是否必须始终使用 spark-submit,或者我可以从 IDE(例如 Eclipse 或 IntelliJ IDEA)中执行此操作吗?
如果答案是肯定的,那么了解更多信息的最佳参考资料是什么(因为我需要提供某种证明)?
非常感谢您的回答,不胜感激!
不,它不一定要在 master 上。
使用 spark-submit
你可以使用 deploy-mode 来控制你的 driver 是 运行 的方式(作为 client
,在机器上你 运行 提交(可以是 master 或其他),或者作为 cluster
,提交给工人)。
工作人员和 driver 之间存在 network communication,所以您希望它 'close' 到工作人员,而不是通过 WAN。
您可以 run from inside 一个可以从您的 IDE 访问的 repl (spark-shell
)。如果您使用的是像 Clojure 这样的动态语言,您也可以只创建一个 SparkContext
引用(通过 master
)一个本地集群,或者您想要将作业放入的集群,然后通过回复实际上这并不容易。