共用方式為


Batch 作業

通用參數和標頭

下列資訊是您可能執行之叢集相關之所有工作的常見資訊:

  • 將 {cluster-endpoint} 取代為您叢集管理端點的 URL。 例如, (myendpoint.azurehdinsight.net)

  • 將 {batch-id} 取代為在作業提交時傳回的批次識別碼。

  • 將 Content-Type 標頭設定為 application/json

  • 使用 HTTP 基本驗證向端點進行驗證。

建立新的批次作業

從 jar 提交新的批次作業。

要求

如需叢集所使用的標頭和參數,請參閱 一般參數和標頭

方法 要求 URI
POST https://{cluster-endpoint}/livy/batches

以下顯示建立新批次作業的範例要求

{  
	   "file" : "wasb://<BlobStorageContainerName>@<StorageAccountName>.blob.core.windows.net/sample.jar",  
	   "args" : ["arg0", "arg1"],  
	   "className" : "com.sample.Job1",  
	   "jars" : ["wasb://<BlobStorageContainerName>@<StorageAccountName>.blob.core.windows.net/helper.jar"],  
	   "files" : ["wasb://<BlobStorageContainerName>@<StorageAccountName>.blob.core.windows.net/config.xml"],  
	   "driverMemory" : "1G",  
	   "driverCores" : 2,  
	   "executorMemory" : "1G",  
	   "executorCores" : 10,  
	   "numExecutors" : 10  
}  
  
元素名稱 必要 類型 Description
proxyUser String 要模擬將執行作業的使用者
檔案 String 批次作業 jar 的路徑。
args No 字串陣列 傳遞至批次作業的命令列引數。
className String 主要類別的類別名稱。
jars No 字串陣列 要放在 java classpath 上的檔案
pyFiles No 字串陣列 要放在 PYTHONPATH 上的檔案
files No 字串陣列 要放在執行程式工作目錄中的檔案
driverMemory String 驅動程式 (1000M、2G) 的記憶體
driverCores No 整數 驅動程式所使用的核心數目
executorMemory String 執行程式的記憶體 (1000M、2G)
executorCores No 整數 執行程式所使用的核心數目
numExecutors No 整數 執行程式數目
archives No 字串陣列 僅) YARN 模式解壓縮封 (存

回應

如果要求順利完成,作業會傳回 200 (OK)

狀態碼: 200 確定

回應本文:

{  
   "id" : 1,  
   "state" : "starting",  
   "log" : ["logline"]  
}  
  
元素名稱 必要 類型 Description
id Yes 整數 批次會話識別碼
log Yes 字串陣列 這個批次作業的記錄行陣列。
狀態 No String 會話狀態。 可能的值:[「starting」、「idle」、「error」]

取得批次作業的完整記錄

要求

如需叢集所使用的標頭和參數,請參閱 一般參數和標頭

方法 要求 URI
GET https://{cluster-endpoint}/livy/batches/{batch-id}/log

回應

如果驗證完成且接受要求,作業會傳回 200 (OK) 。

狀態碼:200 確定

回應本文:

{  
"id" : 1,  
"from":0,  
"total":54  
“log" : ["logline1", “logline2”]  
}  
  
元素名稱 必要 類型 Description
id Yes 整數 批次會話識別碼
整數 Offset
{1}size{2} 整數 行總數
log Yes 字串陣列 此批次作業的記錄行陣列。

取得批次作業的狀態

要求

如需叢集所使用的標頭和參數,請參閱一般參數和標頭。

方法 要求 URI
GET https://{cluster-endpoint}/livy/batches/{batch-id}

回應

如果驗證完成且接受要求,作業會傳回 200 (OK) 。

狀態碼:200 確定

回應本文:

{  
"id" : 1,  
"state" : "starting",  
“log" : ["logline"]  
}  
  
元素名稱 必要 類型 Description
id Yes 整數 批次會話識別碼
log Yes 字串陣列 此批次作業的記錄行陣列。
State String 會話狀態。 可能的值:[「starting」、「idle」、「error」]

終止批次作業

要求

如需叢集所使用的標頭和參數,請參閱 一般參數和標頭

方法 要求 URI
刪除 https://{cluster-endpoint}/livy/batches/{batch-id}

回應

如果驗證完成且接受要求,作業會傳回 200 (OK) 。

狀態碼:200 確定

回應本文:

{  
"msg" : "deleted"  
}  
  
元素名稱 必要 類型 描述
訊息 String 刪除的訊息。

互動式會話

  • 啟動、提交語句、擷取語句結果,以及終止互動式會話

傳回所有作用中批次作業

要求

如需叢集所使用的標頭和參數,請參閱 一般參數和標頭

方法 要求 URI
GET https://{cluster-endpoint}/livy/batches

回應

如果驗證完成且接受要求,作業會傳回 200 (OK) 。

狀態碼:200 確定

回應本文:

{  
	"from" : 0,  
	"total" : 2,  
	"sessions" : [{  
			"id" : 1,  
			"state" : "starting",  
			"log" : ["logline"]  
		}, {  
			"id" : 0,  
			"state" : "idle",  
			"log" : ["logline"]  
		}  
	]  
}  
  
元素名稱 必要 類型 描述
String Offset
total String 要傳回的批次數目
工作階段 (session) Yes 複雜類型陣列 (Batch) 作用中批次作業的清單

Batch

元素名稱 必要 類型 Description
id Yes 整數 批次會話識別碼
log Yes 字串陣列 這個批次作業的記錄行陣列。
State String 會話狀態。 可能的值:[「starting」、「idle」、「error」]