Поделиться через


Пакетное задание

Распространенные параметры и заголовки

Следующие сведения являются общими для всех задач, связанных с кластерами, которые вы можете выполнять.

  • Замените {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  
}  
  
Имя элемента Обязательно Тип Описание
proxyUser нет Строка Пользователь для олицетворения, который будет выполнять задание
файл Да Строка Путь к JAR-файлу пакетного задания.
args Нет Массив строк Аргументы командной строки, передаваемые в пакетное задание.
className Да Строка Имя класса main.
jars Нет Массив строк Файлы для размещения в пути к классам Java
pyFiles Нет Массив строк Файлы для размещения в PYTHONPATH
файлы Нет Массив строк Файлы для размещения в рабочем каталоге исполнителя
driverMemory нет Строка Память для драйвера (1000M, 2G)
driverCores Нет Целое число Число ядер, используемых драйвером
executorMemory нет Строка Память для исполнителя (1000 М, 2 Гига)
executorCores Нет Целое число Количество ядер, используемых исполнителем
numExecutors Нет Целое число число исполнителей
archives Нет Массив строк Распаковка архивов (только в режиме YARN)

Ответ

Операция вернет 200 (ОК), если запрос успешно выполнен.

Код состояния: 200 OK

Текст ответа:

{  
   "id" : 1,  
   "state" : "starting",  
   "log" : ["logline"]  
}  
  
Имя элемента Обязательно Тип Описание
идентификатор Да Целое число Идентификатор сеанса пакетной службы
log Да Массив строк Массив строк журнала для этого пакетного задания.
Состояние Нет Строка Состояние сеанса. Возможное значение: ["starting", "idle", "error"]

Получение полного журнала пакетного задания

Запрос

См. раздел Общие параметры и заголовки для заголовков и параметров, используемых кластерами.

Метод Универсальный код ресурса (URI) запроса
GET https://{cluster-endpoint}/livy/batches/{batch-id}/log

Ответ

Если проверка завершена и запрос принят, операция вернет значение 200 (ОК).

Код состояния: 200 OK

Текст ответа

{  
"id" : 1,  
"from":0,  
"total":54  
“log" : ["logline1", “logline2”]  
}  
  
Имя элемента Обязательно Тип Описание
идентификатор Да Целое число Идентификатор сеанса пакетной службы
из Да Целое число Offset
size Да Целое число Общее количество строк
log Да Массив строк Массив строк журнала для этого пакетного задания.

Получение состояния пакетного задания

Запрос

См. раздел Общие параметры и заголовки для заголовков и параметров, используемых кластерами.

Метод Универсальный код ресурса (URI) запроса
GET https://{cluster-endpoint}/livy/batches/{batch-id}

Ответ

Если проверка завершена и запрос принят, операция вернет значение 200 (ОК).

Код состояния: 200 OK

Текст ответа

{  
"id" : 1,  
"state" : "starting",  
“log" : ["logline"]  
}  
  
Имя элемента Обязательно Тип Описание
идентификатор Да Целое число Идентификатор сеанса пакетной службы
log Да Массив строк Массив строк журнала для этого пакетного задания.
Состояние Да Строка Состояние сеанса. Возможное значение: ["starting", "idle", "error"]

Завершение пакетного задания

Запрос

См. раздел Общие параметры и заголовки для заголовков и параметров, используемых кластерами.

Метод Универсальный код ресурса (URI) запроса
DELETE https://{cluster-endpoint}/livy/batches/{batch-id}

Ответ

Если проверка завершена и запрос принят, операция вернет значение 200 (ОК).

Код состояния: 200 OK

Текст ответа

{  
"msg" : "deleted"  
}  
  
Имя элемента Обязательно Тип Описание
Сообщение Да Строка Сообщение об удалении.

Интерактивные сеансы

  • Запуск, отправка инструкции, получение результатов инструкции и завершение интерактивного сеанса

Возврат всех активных пакетных заданий

Запрос

См. раздел Общие параметры и заголовки для заголовков и параметров, используемых кластерами.

Метод Универсальный код ресурса (URI) запроса
GET https://{cluster-endpoint}/livy/batches

Ответ

Если проверка завершена и запрос принят, операция вернет значение 200 (ОК).

Код состояния: 200 OK

Текст ответа:

{  
	"from" : 0,  
	"total" : 2,  
	"sessions" : [{  
			"id" : 1,  
			"state" : "starting",  
			"log" : ["logline"]  
		}, {  
			"id" : 0,  
			"state" : "idle",  
			"log" : ["logline"]  
		}  
	]  
}  
  
Имя элемента Обязательно Тип Описание
из Да Строка Offset
total Да Строка Количество возвращаемых пакетов
сессия Да Массив сложного типа (пакетная служба) Список активных пакетных заданий

Пакетная служба

Имя элемента Обязательно Тип Описание
идентификатор Да Целое число Идентификатор сеанса пакетной службы
log Да Массив строк Массив строк журнала для этого пакетного задания.
Состояние Да Строка Состояние сеанса. Возможное значение: ["starting", "idle", "error"]