後台執行spark submit命令的方法

2021-07-07 07:42:11 字數 753 閱讀 6880

在使用spark-submit執行工程jar包時常常會出現一下兩個問題:

1.在程式中手打的log(如system.out.println(「***testrdd.count=」+testrdd.count()))常常會因被下乙個job的執行日誌覆蓋掉而無法檢視日誌;

2.一旦命令視窗被關閉或者電腦因斷電等原因異常關閉,程式便終止執行。

其中,第乙個問題可以通過將執行日誌重定位到檔案中來解決,命令如下:

spark-submit testspark.jar > ~/testlog.out
執行上條命令則可將手打的log儲存到~/testlog.out中,且日誌中僅儲存手打log內容。

第二個問題,則可以通過後台執行spark-submit命令nohip來解決,命令如下:

nohip spark-submit testspark.jar &
執行上條命令則實現在後台執行spark命令,不用擔心電腦異常關機以及命令列不小心關閉等問題,且輸出日誌儲存在當前目錄的nohip.out目錄中。

如果希望既可以後台執行命令又可以將日誌儲存到目的檔案中,則可將上述兩個命令結合起來,命令如下:

nohip spark-submit testspark.jar > ~/testlog.out &
如此,便可實現後台執行的問題,nohip不僅可以用於後台執行spark命令,也可用於後台執行其他jar包,可具體查詢nohip的使用方法。

spark submit執行jar包指令碼命令

找到spark submit檔案的目錄 目錄 spark submit master spark executor memory 2g total executor cores 10 driver memory 4g class com.test.main.test test.jar引數 maste...

spark submit 執行jar包報錯的處理

解決辦法 開啟master檔案 vim sbin start master.sh 在vim命令模式下輸入 8080 if spark master webui port then spark master webui port 8080 fi 找到後修改該埠為8001 命令模式下儲存退出 重啟一遍 ...

spark submit常用引數

yarn模式預設啟動2個executor,無論你有多少的worker節點 standalone模式每個worker乙個executor,無法修改executor的數量 partition是rdd中的乙個dataset,一般預設都是2個 executor中的task數量由partition數 最後乙個...