La sortie du pilote dépend de la demande spécifique effectuée. Certaines méthodes, comme uql()
, renvoient un objet UltipaResponse
, qui nécessite d'extraire les données et de les convertir dans le type de pilote correspondant pour servir l'application Java. D'autres méthodes, comme showGraph()
, showSchema()
, et showProperty()
, renvoient directement des données du type pilote (GraphSet
, Schema
, Property
, etc.). Veuillez lire Types Mapping Ultipa and Python pour obtenir la liste des types de pilote principaux.
UltipaResponse
La méthode uql()
et quelques autres méthodes renvoient un objet UltipaResponse
. UltipaResponse
possède les champs suivants :
Champ |
Type |
Description |
---|---|---|
aliases |
List[ResultAlias] | Liste d'alias ; chacun a le nom et le type des données. |
items |
Dict | Mappage des alias et de leurs données correspondantes (DataItem ). |
explainPlan |
List[ExplainPlan] | Arbre d'explication pour l'instruction UQL. |
status |
Status | Statut d'exécution de la demande. |
statistic |
UltipaStatistics | Statistiques de l'exécution de la demande, incluant nodeAffected , edgeAffected , totalCost , engineCost , etc. |
req |
ReturnReq | Détails de la demande, incluant graph_name , uql , host , Retry et uqlIsExtra . |
Si la requête renvoie des données, vous pouvez extraire chaque élément par son alias à l'aide des méthodes get()
ou alias()
. Les deux méthodes renvoient un objet DataItem
, qui intègre le résultat de la requête. Pour mapper le DataItem
au type de pilote correspondant, veuillez lire Types Mapping Ultipa and Python.
get()
Récupère les données par l'indice de l'alias.
Paramètres :
int
: Indice de l'alias.
Renvoie :
DataItem
: Les données récupérées.
response = Conn.uql("find().nodes() as n return n._id, n._uuid limit 3")
print(response.get(0).toJSON())
L'instruction UQL renvoie deux alias n._id
et n._uuid
; la méthode get()
récupère l'alias n._id
à l'indice 0.
{"alias": "n._id", "data": {"name": "n._id", "type": 4, "type_desc": "ATTR", "values": ["U1", "U2", "U3"]}, "type": "ATTR"}
alias()
Récupère les données par le nom de l'alias.
Paramètres :
str
: Nom de l'alias.
Renvoie :
DataItem
: Les données récupérées.
response = Conn.uql("find().nodes() as n return n._id, n._uuid limit 3")
print(response.alias('n._uuid').toJSON())
L'instruction UQL renvoie deux alias n._id
et n._uuid
; la méthode alias()
récupère l'alias n._uuid
par son nom.
{"alias": "n._uuid", "data": {"name": "n._uuid", "type": 4, "type_desc": "ATTR", "values": [1, 2, 3]}, "type": "ATTR"}