在 Spark 代码中,使用 conf.setMaster() 使用配置文件来自动设置本地或 yarn-cluster



所以在开发火花程序时,我使用我的本地机器,因此必须将Master设置为"local"。但是,当我提交从本地开发的程序构建的 jar 时,我显然不想使用"本地"模式。

我怎样才能利用 typesafeconfig 在测试时设置"本地",在生产中设置"纱线集群"?

编辑:

基于@Shaido的解决方案,对于IDEA Intellij:

转到:运行>edir配置->在应用程序配置集下: VM options = -Dspark.master=local[*]

如果您使用的是 IDE,则无需将setMaster硬编码到代码中。

对于 Eclipse,您可以转到"运行配置"->"参数"->"VM 参数"并添加

-Dspark.master=local[*]

在本地运行时,这将使用所有可用内核。其他 IDE 应具有类似的配置。这样,就无需向代码本身添加任何内容。

在群集上运行时,请使用:

spark-submit --master yarn --deploy-mode cluster

理想情况下,yarn-cluster 或 local 应该作为命令行输入,带有 spark-submit,而不是在代码中硬编码。你可以通过

spark-submit --master yarn --deploy-mode cluster in spark 2.1

如果从群集提交,local从本地提交。

相关内容

  • 没有找到相关文章

最新更新