簡體   English   中英

如何向Spark提交Scala作業?

[英]How to submit a Scala job to Spark?

我有一個Pythons腳本,我可以通過以下方式提交給Spark:

/opt/spark/bin/spark-submit --master yarn-client test.py

現在,我嘗試以相同的方式提交Scala程序:

/opt/spark/bin/spark-submit --master yarn-client test.scala

因此,我收到以下錯誤消息:

Error: Cannot load main class from JAR file:/home/myname/spark/test.scala
Run with --help for usage help or --verbose for debug output

Scala程序本身只是一個Hello World程序:

object HelloWorld {
    def main(args: Array[String]): Unit = {
        println("Hello, world!")
    }
}

我究竟做錯了什么?

對於初學者,您必須創建一個jar文件。 您不能簡單地提交Scala源代碼。 如果有疑問,請參閱sbt入門

之后只需添加一個指向HelloWorldclass參數。 假設沒有包裹:

/opt/spark/bin/spark-submit --master yarn-client --class "HelloWorld" path_to.jar

這取決於您使用的群集模式。

看看通用命令

./bin/spark-submit \
  --class <main-class>
  --master <master-url> \
  --deploy-mode <deploy-mode> \
  --conf <key>=<value> \
  ... # other options
  <application-jar> \
  [application-arguments]

對於紗線客戶,

/opt/spark/bin/spark-submit \
  --class "HelloWorld" your_jar_with_scala_file \
  --master yarn-client

查看Spark 文檔以便更好地理解。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM