繁体   English   中英

Spark:如果已经通过`--py-files`选项传递,从站是否应该具有源代码?

[英]Spark: should slaves have source code if already passed with ` --py-files` option?

我有一个运行pyspark应用程序的ec2集群,我正在使用--py-files运行spark-submit时将源doe与压缩的python文件一起传递。 如果我们已经传递了文件,从站是否需要应用程序代码?

不,从属不需要应用程序代码或zip文件。 提交火花作业的驱动程序(主)仅需要zip文件和源代码(包含main方法)。 客户提交火花作业时会发生以下情况:

  1. 驱动程序从spark应用程序代码创建物理执行计划。 执行计划由阶段组成,每个阶段包含几个称为任务的单元。
  2. 集群管理器根据客户端输入分配资源并在工作程序(从属)中启动执行程序。
  3. 通过驱动程序的适当监视,任务将发送到执行程序,执行程序将执行驱动程序分配的任务。
  4. 当main方法退出或sparkContext的stop()方法被调用时,集群管理器将终止所有执行程序并释放所有资源。

整个执行由驱动程序和群集管理器管理。 从站中的执行程序依赖于驱动程序来执行任务。 因此,不需要将源代码或zip文件复制或传递给从属服务器。
这是spark如何工作的架构:

https://spark.apache.org/docs/latest/cluster-overview.html

https://www.dezyre.com/article/apache-spark-architecture-explained-in-detail/338

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM