Trabalho em Lote

Parâmetros e cabeçalhos comuns

As seguintes informações são comuns a todas as tarefas relacionadas a clusters que você pode fazer:

  • Substitua {cluster-endpoint} pela URL do ponto de extremidade de gerenciamento do cluster. (por exemplo, myendpoint.azurehdinsight.net)

  • Substitua {batch-id} pela ID do lote retornada no envio do trabalho.

  • Defina o cabeçalho Content-Type como application/json.

  • Autentique com o ponto de extremidade usando a autenticação básica HTTP.

Criar um novo trabalho em lotes

Envie um novo trabalho em lotes de um jar.

Solicitação

Consulte Parâmetros e cabeçalhos comuns para cabeçalhos e parâmetros usados por clusters.

Método URI da solicitação
POST https://{cluster-endpoint}/livy/batches

A seguir, mostra um exemplo de solicitação para criar um novo trabalho em lotes

{  
	   "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  
}  
  
Nome do elemento Obrigatório Type Descrição
proxyUser Não String O usuário a ser representado que executará o trabalho
file Sim String Caminho para o jar do trabalho em lotes.
args Não Matriz de cadeia de caracteres Argumentos de linha de comando passados para o trabalho em lote.
className Sim String O nome de classe da classe main.
jars Não Matriz de cadeia de caracteres Arquivos a serem colocados no classpath java
pyFiles Não Matriz de cadeia de caracteres Arquivos a serem colocados no PYTHONPATH
files Não Matriz de cadeia de caracteres Arquivos a serem colocados no diretório de trabalho do executor
driverMemory Não String Memória para driver (1000M, 2G)
driverCores Não Integer Número de núcleos usados pelo driver
executorMemory Não String Memória para executor (1000M, 2G)
executorCores Não Integer Número de núcleos usados pelo executor
numExecutors Não Integer o número de executores
archives Não Matriz de cadeia de caracteres Arquivos a serem descompactados (somente no modo YARN)

Resposta

A operação retornará 200 (OK) se a solicitação for concluída com êxito

Código de status: 200 OK

Corpo da resposta:

{  
   "id" : 1,  
   "state" : "starting",  
   "log" : ["logline"]  
}  
  
Nome do elemento Obrigatório Type Descrição
id Sim Integer A ID da sessão em lote
log Sim Matriz de cadeia de caracteres Matriz de linhas de log para este trabalho em lotes.
state Não String O estado da sessão. Valor possível: ["starting", "idle", "error"]

Obter o log completo de um trabalho em lotes

Solicitação

Consulte Parâmetros e cabeçalhos comuns para cabeçalhos e parâmetros usados por clusters.

Método URI da solicitação
GET https://{cluster-endpoint}/livy/batches/{batch-id}/log

Resposta

Se a validação for concluída e a solicitação for aceita, a operação retornará 200 (OK).

Código de status: 200 OK

Corpo da resposta:

{  
"id" : 1,  
"from":0,  
"total":54  
“log" : ["logline1", “logline2”]  
}  
  
Nome do elemento Obrigatório Type Descrição
id Sim Integer A ID da sessão em lote
de Sim Integer Deslocamento
tamanho Sim Integer Número total de linhas
log Sim Matriz de cadeia de caracteres Matriz de linhas de log para este trabalho em lote.

Obter o estado de um trabalho em lote

Solicitação

Confira Parâmetros e cabeçalhos comuns para cabeçalhos e parâmetros usados por clusters.

Método URI da solicitação
GET https://{cluster-endpoint}/livy/batches/{batch-id}

Resposta

Se a validação for concluída e a solicitação for aceita, a operação retornará 200 (OK).

Código de status: 200 OK

Corpo da resposta:

{  
"id" : 1,  
"state" : "starting",  
“log" : ["logline"]  
}  
  
Nome do elemento Obrigatório Type Descrição
id Sim Integer A ID da sessão em lote
log Yes Matriz de cadeia de caracteres Matriz de linhas de log para este trabalho em lote.
state Sim String O estado da sessão. Valor possível: ["starting", "idle", "error"]

Encerrar um trabalho em lotes

Solicitação

Confira Parâmetros e cabeçalhos comuns para cabeçalhos e parâmetros usados por clusters.

Método URI da solicitação
Delete (excluir) https://{cluster-endpoint}/livy/batches/{batch-id}

Resposta

Se a validação for concluída e a solicitação for aceita, a operação retornará 200 (OK).

Código de status: 200 OK

Corpo da resposta:

{  
"msg" : "deleted"  
}  
  
Nome do elemento Obrigatório Type Descrição
Mensagem Sim String A mensagem da exclusão.

Sessões interativas

  • Iniciar, enviar instrução, recuperar resultados da instrução e encerrar uma sessão interativa

Retornar todos os trabalhos em lotes ativos

Solicitação

Confira Parâmetros e cabeçalhos comuns para cabeçalhos e parâmetros usados por clusters.

Método URI da solicitação
GET https://{cluster-endpoint}/livy/batches

Resposta

Se a validação for concluída e a solicitação for aceita, a operação retornará 200 (OK).

Código de status: 200 OK

Corpo da resposta:

{  
	"from" : 0,  
	"total" : 2,  
	"sessions" : [{  
			"id" : 1,  
			"state" : "starting",  
			"log" : ["logline"]  
		}, {  
			"id" : 0,  
			"state" : "idle",  
			"log" : ["logline"]  
		}  
	]  
}  
  
Nome do elemento Obrigatório Type Descrição
de Sim String Deslocamento
total Yes String Número de lotes a serem retornados
sessão Sim Matriz de tipo complexo (Lote) Uma lista de trabalhos em lotes ativos

Lote

Nome do elemento Obrigatório Type Descrição
id Sim Integer A ID da sessão em lote
log Yes Matriz de cadeia de caracteres Matriz de linhas de log para este trabalho em lote.
state Sim String O estado da sessão. Valor possível: ["starting", "idle", "error"]