作業運維報錯
更新時間 2023-11-30 00:33:28
最近更新時間: 2023-11-30 00:33:28
分享文章
本章節主要介紹Spark作業相關問題中有關作業運維報錯的問題。
Spark作業訪問OBS數據時報ResponseCode: 403和ResponseStatus: Forbidden錯誤
問題現象
Spark程序訪問OBS數據時上報如下錯誤。
Caused by: com.obs.services.exception.ObsException: Error message:Request Error.OBS servcie Error Message. -- ResponseCode: 403, ResponseStatus: Forbidden
解決方案
Spark程序訪問OBS數據時,需要通過配置AK、SK的訪問進行訪問。具體訪問方式可以參考上方:通用隊列操作OBS表如何設置AK/SK。
有訪問OBS對應的桶的權限,但是Spark作業訪問時報錯 verifyBucketExists on XXXX: status [403]
請排查“全局配置 > 作業配置” 對應OBS桶是否被設置為了DLI日志桶。
日志桶不能用于DLI的其他業務功能中。
Spark作業運行大批量數據時上報作業運行超時異常錯誤
Spark作業程序訪問大批量數據,如訪問DWS大批量數據庫數據時,建議設置并發數,啟動多任務的方式運行,避免作業運行超時。
使用Spark作業訪問sftp中的文件,作業運行失敗,日志顯示訪問目錄異常
Spark作業不支持訪問sftp。
建議將文件數據上傳到OBS,再通過Spark作業進行讀取和分析。
執行作業的用戶數據庫和表權限不足導致作業運行失敗
問題現象
Spark作業運行報數據庫權限不足,報錯信息如下:
org.apache.spark.sql.AnalysisException: org.apache.hadoop.hive.ql.metadata.HiveException: MetaException(message:Permission denied for resource: databases.xxx,action:SPARK_APP_ACCESS_META)
解決方案
需要給執行作業的用戶賦數據庫的操作權限,具體操作參考如下:
- 在DLI管理控制臺左側,單擊“數據管理”>“庫表管理”。
- 單擊所選數據庫“操作”欄中的“權限管理”,將顯示該數據庫對應的權限信息。
- 在數據庫權限管理頁面右上角單擊“授權”。
- 在“授權”彈出框中,選擇“用戶授權”或“項目授權”,填寫需要授權的用戶名或選擇需要授權的項目,選擇相應的權限。
- 單擊“確定”,完成授權。