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」] |