使用与 Spark-submit 相同的 jar

Using same jar with Spark-submit

我使用我的 jar 文件通过 spark-submit 在 yarn 集群模式下部署了一个作业。每次我使用 'same jar file' 提交时部署的作业,但每次提交时它都会上传到 hadoop。我认为每次都上传相同的 jar 是不必要的例程。有什么方法可以上传一次并用 jar 做 yarn 作业吗?

你可以将你的spark jar放在hdfs中,然后使用--master yarn-cluster模式,这样你就可以节省每次上传jar到hdfs所需的时间。

其他替代方法是将您的 jar 放在每个节点上的 spark 类路径中,但有以下缺点:

  1. 如果您有超过 30 个节点,则在每个节点中对您的 jar 进行 scp 会非常乏味。
  2. 如果你的hadoop集群升级了,新安装了spark,你就得reploy了。