簡體   English   中英

Spark代碼可以在沒有spark-submit的集群上運行嗎?

[英]Can Spark code be run on cluster without spark-submit?

我想開發一個Scala應用程序,它連接一個master並運行一段代碼。 我想在不使用spark-submit的情況下實現這一點。 這可能嗎? 特別是我想知道以下代碼是否可以從我的機器運行並連接到集群:

val conf = new SparkConf()
  .setAppName("Meisam")
  .setMaster("yarn-client")

val sc = new SparkContext(conf)

val sqlContext = new SQLContext(sc)
val df = sqlContext.sql("SELECT * FROM myTable")

...

添加一個conf

val conf = new SparkConf() .setAppName("Meisam") .setMaster("yarn-client") .set("spark.driver.host", "127.0.0.1");

是的,這是可能的,基本上你所做的就是在客戶端部署模式下在YARN集群上運行任務所需的一切(驅動程序在應用程序運行的機器上運行)。

spark-submit可以幫助您保持代碼不受正確執行所需的少量SparkConf設置(如主URL)的影響。 當您使代碼不受低級細節影響時,您可以在任何Spark集群(YARN,Mesos,Spark Standalone和本地)上部署Spark應用程序,而無需重新編譯它們。

與我在這里所說的相反,我認為只有部分可能,因為我最近發現了很難的方式,就是我的Spark新手。 雖然您可以如上所述連接到集群並在其上運行代碼,但是當您開始執行任何非常重要的操作時,您可能會遇到問題,甚至像使用UDF一樣簡單(用戶定義的函數,AKA中未包含的任何內容)火花)。 看看這里https://issues.apache.org/jira/browse/SPARK-18075 ,以及其他相關的門票,最重要的是,在回復中。 此外,這看起來很有用(現在看一下): 從Eclipse和Spark Context提交spark app作為一個紗線作業

暫無
暫無

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

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