閱讀676 返回首頁    go windows


創建(提交)作業__SDK接口說明_Java版SDK_批量計算-阿裏雲

創建(提交)作業

createJob

方法說明:

創建並提交一個作業到BatchCompute。

參數說明:

參數 類型 是否必需 說明
jobDescription JobDescription Job對象中有各個任務的描述信息,和任務的DAG依賴。

下麵的 JobDescription ,TaskDag,TaskDescription以及ResourceDescription的包名都是: com.aliyuncs.batchcompute.pojo.v20151111

(1) JobDescription的屬性(都有getter和setter方法)

屬性 類型 是否必需 說明
name String 作業名稱。
priority int 優先級用一個[0,1000]範圍內的整數指定。數值越高表示作業調度時的優先級越高
description String 作業的簡短描述信息。
dag DAG Job對象中有各個任務的描述信息,以及各個任務之間的DAG依賴。
jobFailOnInstanceFail boolean 表示Instance失敗會否導致Job失敗,一般取值為true。
autoRelease boolean 表示job運行成功自動會被立即釋放(刪除)掉。默認為false。
type String 作業類型,目前僅支持有向無環圖(directed acycline graph,DAG)形式描述任務。取值: “DAG”
notification Notification 消息通知配置,可以配置MNS服務的Topic和Job相關事件.

(2) DAG 的屬性(都有getter和setter方法)

屬性 類型 是否必需 說明
tasks Map<String, TaskDescription> 所有任務名與任務描述的映射信息。
dependencies Map<String, List<String>> 任務之間的依賴關係, 也是一個map,其中key為 源任務名稱,value為 目標任務名稱 列表,可以描述一對多的順序關係 (詳見示例)。

(3) TaskDescription的屬性(都有getter和setter方法)

屬性 類型 是否必需 描述
taskName String 任務名稱。
clusterId String 集群ID。該參數和autoCluster(匿名集群)參數隻能選一個。
autoCluster AutoCluster 匿名集群,該參數和集群ID隻能選一個。
parameters Paramters 程序運行相關配置
inputMapping Map<String,String> 用來描述OSS上路徑同本地掛載位置的映射關係。 所有掛載位置,必須以’/’結尾,可以位於相同的bucket,也可以位於不同的bucket,但是必須歸屬同一個用戶。掛載位置在windows下是一個盤符,在linux下是一個文件夾。 key為oss路徑,value為掛載路徑,如:”D:”,或“/home/admin/dist1”
outMapping Map<String,String> 本地路徑對OSS映射,Key為本地路徑,value為OSS路徑。
logMapping Map<String,String> 本地日誌路徑對OSS映射,Key為本地路徑,value為OSS路徑。
instanceCount int 任務中實例的個數,正數。
timeout int 設置任務中的一個實例的最長執行時間(超時時間),範圍為[1,86400],單位為秒。
maxRetryCount int 最大重試次數,默認為0。

(4) AutoCluster的屬性(都有getter和setter方法)

屬性 類型 是否必需 描述
ECSImageId String 支持ECS鏡像ID和注冊的鏡像ID。
instanceType String 實例類型。不同region支持的實例類型不一樣。
resourceType String 資源類型,目前隻支持且默認為:”OnDemand”。
userData Map<String, String> 用戶數據
configs Configs 集群的一些配置信息,比如實例的磁盤配置,由Configs描述。

(5) Parameters的屬性(都有getter和setter方法)

屬性 類型 是否必需 描述
command Command 用戶程序相關命令行參數。
inputMappingConfig InputMappingConfig NFS掛載服務配置項。
stdoutRedirectPath String 標準輸出將被上傳到這裏, 應該是一個oss路徑。
stderrRedirectPath String 標準錯誤將被上傳到這裏, 應該是一個oss路徑。

(6) Command 的屬性(都有getter和setter方法)

屬性 類型 是否必需 描述
commandLine String 執行用戶程序的命令。
PackagePath String 用戶程序所在OSS路徑。
EnvVars Map<String,String> 用戶程序開始執行時,需要設置的環境變量。

(7) InputMappingConfig的屬性(都有getter和setter方法)

屬性 類型 是否必需 描述
lock Boolean 布爾型變量,用來確定NFS掛載服務是否支持網絡文件鎖。如果設置為true,則會開啟網絡鎖服務,為文件鎖提供後端支持。 如果設置為false,則會關閉文件鎖服務,可以提高文件訪問的性能。但是文件鎖的支持僅在NFS客戶端,不會同步到服務端,對於有些操作係統,顯示的文件鎖方法可能會失敗。
locale String OSS上的Object統一采用UTF-8編碼命名,這個參數可以決定掛載後使用的本地字符集。 可選範圍包括GBK、GB2312-80、BIG5、ANSI、EUC-JP、EUC-TW、EUC-KR、SHIFT-JIS、KSC5601等。

(8) Notification的屬性(都有getter和setter方法)

屬性 類型 是否必需 描述
topic Topic 消息Topic

(9) Topic 的屬性(都有getter和setter方法)

屬性 類型 是否必需 描述
endpoint String MNS區域endpoint,格式如: https://${your_user_id}.mns.${region}-internal.aliyuncs.com/ ,請盡量使用內網Endpoint。
name String Topic名稱。
events List<String> 事件列表,請填寫job相關的事件。

返回值說明:

  • 創建成功後返回一個CreateJobResponse實例,可以通過 response.getJobId() 獲取創建的作業ID。
類型 說明
CreateJobResponse 可以獲取創建成功的jobId。

CreateJobResponse的包名為:com.aliyuncs.batchcompute.model.v20151111,下麵的其他Response都是在這個包下麵。

  • 創建失敗後,拋出異常: ClientException。

代碼示例:

  1. try{
  2. CreateJobResponse response = client.createJob(jobDescription);
  3. String jobId = response.getJobId();
  4. //創建成功
  5. }catch(ClientException e){
  6. e.printStackTrace();
  7. //創建失敗
  8. }

最後更新:2016-12-17 16:45:25

  上一篇:go 構造方法__SDK接口說明_Java版SDK_批量計算-阿裏雲
  下一篇:go 獲取作業信息__SDK接口說明_Java版SDK_批量計算-阿裏雲