用戶可將自己開發的程序提交到MRS中,執行程序并獲取結果。本章節教您在MRS集群頁面如何提交一個新的HiveSql作業。HiveSql作業用于提交SQL語句和SQL腳本文件查詢和分析數據,包括SQL語句和Script腳本兩種形式,如果SQL語句涉及敏感信息,請使用Script提交。
前提條件
用戶已經將運行作業所需的程序包和數據文件上傳至OBS系統或HDFS中。
通過界面提交作業
1.登錄MRS管理控制臺。
2.選擇“集群列表 > 現有集群”,選中一個運行中的集群并單擊集群名稱,進入集群信息頁面。
3.若集群開啟Kerberos認證時執行該步驟,若集群未開啟Kerberos認證,請無需執行該步驟。
在“概覽”頁簽的基本信息區域,單擊“IAM用戶同步”右側的“同步”進行IAM用戶同步。
說明
當IAM用戶的用戶組的所屬策略從MRS ReadOnlyAccess向MRS CommonOperations、MRS FullAccess、MRS Administrator變化時,由于集群節點的SSSD(System Security Services Daemon)緩存刷新需要時間,因此同步完成后,請等待5分鐘,等待新修改策略生效之后,再進行提交作業。否則,會出現提交作業失敗的情況。
當IAM用戶的用戶組的所屬策略從MRS CommonOperations、MRS FullAccess、MRS Administrator向MRS ReadOnlyAccess變化時,由于集群節點的SSSD緩存刷新需要時間,因此同步完成后,請等待5分鐘,新修改策略才能生效。
4.單擊“作業管理”,進入“作業管理”頁簽。
5.單擊“添加”,進入“添加作業”頁面。
6.配置作業信息。“作業類型”選擇“HiveSql”并參考下表配置HiveSql作業信息。
作業配置信息
| 參數 | 參數說明 |
|---|---|
| 作業名稱 | 作業名稱,只能由字母、數字、中劃線和下劃線組成,并且長度為1~64個字符。 說明 建議不同的作業設置不同的名稱。 |
| SQL類型 | SQL查詢語句提交類型。 SQL Script |
| SQL語句 | “SQL類型”參數為“SQL”時參數有效,請輸入待運行的SQL語句,然后單擊“檢查”來檢查SQL語句的正確性,確保輸入語句正確。如果同時需要提交多條語句并執行,使用“;”分隔不同語句。 |
| SQL文件 | “SQL類型”參數為“Script”時參數有效,待執行SQL文件的路徑,需要滿足以下要求。 最多為1023字符,不能包含;l&>,<'$特殊字符,且不可為空或全空格。 執行程序路徑可存儲于HDFS或者OBS中,不同的文件系統對應的路徑存在差異。 - OBS:以“obs://”開頭。示例: obs://wordcount/program/xxx.jar。 - HDFS:以“/user”開頭。數據導入HDFS請參考導入導出數據章節中的“導入數據”。 SparkScript和HiveScript需要以“.sql”結尾,MapReduce需要以“.jar”結尾,Flink和SparkSubmit需要以“.jar”或“.py”結尾。sql、jar、py不區分大小寫。 說明 存儲在OBS上的文件路徑支持以“obs://”開頭格式。如需使用該格式提交作業,訪問OBS需要配置對應權限。 創建集群時開啟“OBS權限控制”功能時,可直接使用“obs://”路徑,無需單獨配置。 創建集群時未開啟或不支持“OBS權限控制”功能時,請參考配置存算分離集群(委托方式)章節訪問OBS頁面進行配置。 |
| 運行程序參數 | 可選參數,為本次執行的作業配置相關優化參數(例如線程、內存、CPU核數等),用于優化資源使用效率,提升作業的執行性能。 常用運行程序參數如下表“運行程序參數”。 |
| 服務配置參數 | 可選參數,用于為本次執行的作業修改服務配置參數。該參數的修改僅適用于本次執行的作業,如需對集群永久生效,請參考配置服務參數頁面進行修改。 如需添加多個參數,請單擊右側 ![]() 增加,如需刪除參數,請單擊右側“刪除”。常用服務配置參數如下表“服務配置參數”。 |
| 命令參考 | 用于展示提交作業時提交到后臺執行的命令。 |
運行程序參數
| 參數 | 參數說明 | 取值樣例 |
|---|---|---|
| --hiveconf | 設置Hive服務相關配置,例如設置執行引擎為MR。 | 設置執行引擎為MR:--hiveconf "hive.execution.engine=mr" |
| --hivevar | 設置用戶自定義變量,例如設置變量id。 | 設置變量id:--hivevar id="123" select * from test where id = ${hivevar:id}; |
服務配置參數
| 參數 | 參數說明 | 取值樣例 |
|---|---|---|
| fs.obs.access.key | 訪問OBS的密鑰ID。 | - |
| fs.obs.secret.key | 訪問OBS與密鑰ID對應的密鑰。 | - |
| hive.execution.engine | 選擇執行作業的引擎。 | mr tez |
7.確認作業配置信息,單擊“確定”,完成作業的新增。
作業新增完成后,可對作業進行管理。
通過后臺提交作業
1.登錄MRS管理控制臺。
2.選擇“集群列表 > 現有集群”,選中一個運行中的集群并單擊集群名稱,進入集群信息頁面。
3.在“節點管理”頁簽中單擊某一Master節點名稱,進入彈性云主機管理控制臺。
4.單擊頁面右上角的“遠程登錄”。
5.根據界面提示,輸入Master節點的用戶名和密碼,用戶名、密碼分別為root和創建集群時設置的密碼。
6.執行如下命令初始化環境變量。
source /opt/BigData/client/bigdata_env
說明
MRS 3.x及之后版本客戶端默認安裝路徑為“/opt/Bigdata/client”,MRS 3.x之前版本為“/opt/client”。具體以實際為準。
若安裝了Hive多實例,在使用客戶端連接具體Hive實例時,請執行以下命令加載具體實例的環境變量,否則請跳過此步驟。例如,加載Hive2實例變量:
source /opt/BigData/client/Hive2/component_env
7.如果當前集群已開啟Kerberos認證,執行以下命令認證當前用戶。如果當前集群未開啟Kerberos認證(普通模式),則無需執行該步驟。
kinit MRS集群用戶 (用戶需要有hive組)
8.執行beeline連接hiveserver,運行任務。
beeline
普通模式,則執行以下命令,如果不指定組件業務用戶,則會以當前操作系統用戶連接hiveserver。
beeline -n 組件業務用戶
beeline -f sql文件(執行文件里的sql)

增加,如需刪除參數,請單擊右側“刪除”。