Partager via


Session interactive

Paramètres et en-têtes communs

Les informations suivantes sont communes à toutes les tâches liées aux clusters que vous pouvez effectuer :

  • Remplacez {cluster-endpoint} par l’URL du point de terminaison de gestion de votre cluster. (par exemple, myendpoint.azurehdinsight.net)

  • Remplacez {session-id} par l’ID de session retourné au démarrage de la session.

  • Définissez l’en-tête Content-Type sur application/json.

  • Authentifiez-vous avec le point de terminaison à l’aide de l’authentification DE base HTTP.

Créer une session interactive

Démarrez une nouvelle session interactive.

Requête

Consultez Paramètres et en-têtes communs pour les en-têtes et les paramètres utilisés par les clusters.

Méthode URI de demande
POST https://{cluster-endpoint}/livy/sessions

Voici un exemple de demande de création d’une session interactive

{  
	"kind" : "spark",  
	"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  
}  
  
Nom de l'élément Obligatoire Type Description
Type Oui String Type de session. Valeurs possibles : ["spark », « pyspark », « sparkr"]
proxyUser Non String Utilisateur à emprunter l’identité qui exécutera le travail
jars Non Tableau de chaînes Fichiers à placer sur le classpath java
pyFiles Non Tableau de chaînes Fichiers à placer sur pythonPATH
files Non Tableau de chaînes Fichiers à placer dans le répertoire de travail de l’exécuteur
driverMemory Non String Mémoire pour le pilote (1000M, 2G)
driverCores Non Integer Nombre de cœurs utilisés par le pilote
executorMemory Non String Mémoire pour l’exécuteur (1000M, 2G)
executorCores Non Integer Nombre de cœurs utilisés par l’exécuteur
numExecutors Non Integer Nombre d’exécuteurs
archives Non Tableau de chaînes Archives à décompresser (mode YARN uniquement)

response

L’opération retourne 200 (OK) si la demande est terminée avec succès

Code d’état : 200 OK

Corps de la réponse :

{  
"id" : 1,  
"state" : "starting",  
"kind" : "spark",  
“log" : ["logline"]  
}  
  
Nom de l'élément Obligatoire Type Description
id Oui Integer ID de session interactif
Type Oui String Type de session. Valeurs possibles : ["spark », « pyspark », « sparkr"]
log Oui Tableau de chaînes Tableau de lignes de journal pour ce travail par lots.
État Oui String État de session. Valeur possible : ["starting », « idle », « error », « running », « success"]

Obtenir l’état d’une session interactive

Requête

Consultez Paramètres et en-têtes communs pour les en-têtes et les paramètres utilisés par les clusters.

Méthode URI de demande
GET https://{cluster-endpoint}/livy/sessions/{session-id}

response

Si la validation est terminée et que la demande est acceptée, l’opération retourne 200 (OK).

Code d’état : 200 OK

Corps de la réponse :

{  
"id" : 1,  
"state" : "starting",  
"kind" : "spark",  
“log" : ["logline"]  
}  
  
Nom de l'élément Obligatoire Type Description
id Oui Integer ID de session de lot
Type Oui String Type de session. Valeurs possibles : ["spark », « pyspark », « sparkr"]
log Oui Tableau de chaînes Tableau de lignes de journal pour ce travail par lots.
state Oui String État de session. Valeur possible : ["starting », « idle », « error"]

Récupérer les résultats d’une instruction d’une session interactive

Requête

Consultez Paramètres et en-têtes communs pour les en-têtes et les paramètres utilisés par les clusters.

Méthode URI de demande
GET https://{cluster-endpoint}/livy/sessions/{session-id}/statements

response

Si la validation est terminée et que la demande est acceptée, l’opération retourne 200 (OK).

Code d’état : 200 OK

Corps de la réponse :

{  
"total_statements" : 1,  
"statements" : [{  
			"id" : 0,  
			"state" : "available",  
			"output" : {  
				"status" : "ok",  
				"execution_count" : 1,  
				"data" : {  
					"text/plain" : "res1: Int = 2"  
				}  
			}  
		}  
	]  
}  
Nom de l'élément Obligatoire Type Description
Total_statements Oui Integer Nombre total d’instructions
Instructions Oui Tableau de type complexe (instruction) Sortie de l’instruction

Instruction

Nom de l'élément Obligatoire Type Description
Id Oui Integer ID d’instruction
État Oui String État de l’instruction.
Sortie Oui Type complexe (sortie) Sortie de l’instruction.

Sortie

Nom de l'élément Obligatoire Type Description
Statut Oui String L’instruction status
Execution_count Oui Integer Nombre d’exécutions
data Oui Type complexe (Texte) Sortie de texte de l’instruction.

Texte

Nom de l'élément Obligatoire Type Description
Text/plain Oui String Texte brut de la sortie

Retourner toutes les sessions interactives actives

Requête

Consultez Paramètres et en-têtes communs pour les en-têtes et les paramètres utilisés par les clusters.

Méthode URI de demande
GET https://{cluster-endpoint}/livy/sessions

response

Si la validation est terminée et que la demande est acceptée, l’opération retourne 200 (OK).

Code d’état : 200 OK

Corps de la réponse :

{  
	"from" : 0,  
	"total" : 2,  
	"sessions" : [{  
			"id" : 1,  
			"state" : "starting",  
			"kind" : "spark",  
			"log" : ["logline"]  
		}, {  
			"id" : 0,  
			"state" : "idle",  
			"kind" : "spark",  
			"log" : ["logline"]  
		}  
	]  
}  
  
Nom de l'élément Obligatoire Type Description
de Oui String Offset
total Oui String Nombre de sessions à retourner
sessions Oui Tableau de type complexe (session) Liste des sessions actives

session

Nom de l'élément Obligatoire Type Description
id Oui Integer ID de session interactif
Type Oui String Type de session. Valeurs possibles : ["spark », « pyspark », « sparkr"]
log Oui Tableau de chaînes Tableau de lignes de journal pour cette session.
state Oui String État de session. Valeur possible : ["starting », « idle », « error », « running », « success"]

Envoyer une ou plusieurs instructions à une session interactive

Requête

Consultez Paramètres et en-têtes communs pour les en-têtes et les paramètres utilisés par les clusters.

Méthode URI de demande
POST https://{cluster-endpoint}/livy/sessions/{session-id}/statements

Voici un exemple de demande de création d’une session interactive.

{  
	"code" : "1 + 1"  
}  
Nom de l'élément Obligatoire Type Description
Code Oui String Code à exécuter

response

Si la validation est terminée et que la demande est acceptée, l’opération retourne 200 (OK).

Code d’état : 200 OK

Corps de la réponse :

{  
"id" : 1,  
"state" : "running",  
"output" : null  
}  
Nom de l'élément Obligatoire Type Description
id Oui Integer ID de session de lot
Sortie Oui String Sortie de l’instruction
state Oui String État de session. Valeur possible : ["starting », « idle », « error"]

Mettre fin à une session interactive

Requête

Consultez Paramètres et en-têtes communs pour les en-têtes et les paramètres utilisés par les clusters.

Méthode URI de demande
Suppression https://{cluster-endpoint}/livy/sessions/{session-id}

response

Si la validation est terminée et que la demande est acceptée, l’opération retourne 200 (OK).

Code d’état : 200 OK

Corps de la réponse :

{  
"msg" : "deleted"  
}  
Nom de l'élément Obligatoire Type Description
Message Oui String Message de la suppression.