Hue开发指南 - 提交 Spark 程序
目錄
?
Hue開發指南
1.Spark文件打包成一個Jar包提交Hue運行
1.1 上傳Spark Jar包至HDFS文件系統
1.2.Hue中創建Spark任務
2.多jar包導入執行(依賴jar包與主程序jar包分開打包)
2.1 修改worksapce
2.2 添加程序依賴jar包
Hue開發指南
Hue是面向 Hadoop 的開源用戶界面,可以讓您更輕松地運行和開發 Hive 查詢、管理 HDFS 中的文件、運行和開發 Pig 腳本以及管理表。
1.Spark文件打包成一個Jar包提交Hue運行
1.1 上傳Spark Jar包至HDFS文件系統
上傳方式不做具體介紹
?
1.2.Hue中創建Spark任務
打開Workflow
選擇 ACTIONS
添加Spark任務,將Spark移動到Workflow
填寫文件位置,與jar包名稱
Files與Jar/py name 相同即可
添加完成后填寫運行類名,運行參數
點擊配置可設置提交方式
設置提交方式
?運行Spark
?
運行成功,我們可以設置Schedule進行任務定時執行
?
2.多jar包導入執行(依賴jar包與主程序jar包分開打包)
日常開發中,把所有相關依賴jar包打成一個包,后續每次程序更新都需要更新比較大jar包,我們把自己開發的源碼和相關依賴jar包單獨出來,后續每次只需要更新我們自己開發的源碼就可以了
2.1 修改worksapce
修改workspace,可以選擇程序所在目錄,程序運行時會自動讀取Workspace目錄下名稱為 lib 的目錄 的jar包,所以設置Workspace時,我們在Workspace目錄下創建lib目錄并把依賴的jar包放在下面就可以了,下一步的 oozie.libpath 參數可以不進行設置,(這里可以不修改,修改是為了后期查看相關配置文件比較方便)
2.2 添加程序依賴jar包
單獨設置目錄,添加依賴jar包 ,這里很重要依賴的jar包就從這里導入
注意的是oozie.libpath 是我們上傳的依賴jar包
依賴jar包不能和oozie的系統spark jar包重復,如果重復會提示異常
org.apache.oozie.action.ActionExecutorException: JA009: cache file (mapreduce.job.cache.files) scheme: "hdfs" host: "nameservice1" port: -1 file: "/jast/spark-job/lib/chill_2.11-0.8.0.jar" conflicts with cache file (mapreduce.job.cache.files) hdfs://nameservice1/user/oozie/share/lib/lib_20180925112207/spark/chill_2.11-0.8.0.jaroozie spark引用的系統jar包在
hdfs dfs -ls /user/oozie/share/lib/lib_20180925112207/spark可通過以下命令對我們自己依賴jar包進行去重后,再上傳到依賴jar包
#刪除dir1目錄重復數據 rm `diff -rs dir1 dir2 |grep '相同'|awk '{print $2}'`?
?
選擇我們程序的所有相關jar包
選擇后關閉,在workflow中保存
添加spark程序
剛剛修改了Workspace 這里 Files和Jar/py name 可以直接使用相對路徑,(建議還是是使用絕對路徑,比較明了)
?
設置執行類和啟動參數
保存運行。成功。
3. 加入 Schedule? 任務
在workflow中選擇Schedule
填寫參數并設置 執行時間
注意如果上面自己指定了 oozie.libpath ,這里也要設置 oozie.libpath ,否則提示缺少jar包
所以上面如果我們自己設置Workspace目錄,并把依賴傳到lib目錄,這里就不用設置了,他默認會去讀取
保存運行
時區問題參考:https://blog.csdn.net/zhangshenghang/article/details/84540403
總結
以上是生活随笔為你收集整理的Hue开发指南 - 提交 Spark 程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ubuntu 16.0安装ros-kin
- 下一篇: ubuntu 配置 静态ip