Change Password

Please enter the password.
Please enter the password. Between 8-64 characters. Not identical to your email address. Contain at least 3 of: uppercase, lowercase, numbers, and special characters.
Please enter the password.
Submit

Change Nickname

Current Nickname:
Submit

Apply New License

License Detail

Please complete this required field.

  • Ultipa Graph V4

Standalone

Please complete this required field.

Please complete this required field.

The MAC address of the server you want to deploy.

Please complete this required field.

Please complete this required field.

Cancel
Apply
ID
Product
Status
Cores
Applied Validity Period(days)
Effective Date
Excpired Date
Mac Address
Apply Comment
Review Comment
Close
Profile
  • Full Name:
  • Phone:
  • Company:
  • Company Email:
  • Country:
  • Language:
Change Password
Apply

You have no license application record.

Apply
Certificate Issued at Valid until Serial No. File
Serial No. Valid until File

Not having one? Apply now! >>>

Product Created On ID Amount (USD) Invoice
Product Created On ID Amount (USD) Invoice

No Invoice

v4.5
Search
    English
    v4.5

      Types Mapping Ultipa and Python

      Mapping Methods

      The get() or alias() method of the UltipaResponse class returns a DataItem, which embeds the query result. You should use the as<Type>() method of DataItem to cast the result to the appropriate driver type.

      response = Conn.uql("find().nodes() as n return n{*} limit 5")
      nodeList = response.alias("n").asNodes()
      

      The result n coming from the database contains five nodes, each of the NODE type. The asNodes() method converts them as a list of Node objects.

      Type mapping methods available on DataItem:

      UQL Type UQL Alias Method Driver Type
      Description
      NODE Any asNodes() List[Node] Maps NODE-type DataItem to a list of Node objects.
      NODE Any asFirstNode() Node Maps the first node in a NODE-type DataItem to a Node object. Equivalent to asNodes().get(0).
      EDGE Any asEdges() List[Edge] Maps EDGE-type DataItem to a list of Edge objects.
      EDGE Any asFirstEdge() Edge Maps the first edge in an EDGE-type DataItem to an Edge object. Equivalent to asEdges().get(0).
      PATH Any asPaths() List[Path] Maps PATH-type DataItem to a list of Path objects.
      GRAPH Any asGraph() Graph Maps GRAPH-type DataItem to a Graph object.
      TABLE _graph asGraphSets() List[GraphSet] Maps DataItem with the alias _graph to a list of GraphSet objects.
      TABLE _nodeSchema, _edgeSchema asSchemas() List[Schema] Maps DataItem with the alias _nodeSchema or _edgeSchema to a list of Schema objects.
      TABLE _nodeProperty, _edgeProperty asProperties() List[Property] Maps DataItem with the alias _nodeProperty or _edgeProperty to a list of Property objects.
      TABLE _algoList asAlgos() List[Algo] Maps DataItem with the alias _algoList to a list of Algo objects.
      TABLE _extaList asExtas() List[Exta] Maps DataItem with the alias _extaList to a list of Exta objects.
      TABLE _nodeIndex, _edgeIndex, _nodeFulltext, _edgeFulltext asIndexes() List[Index] Maps DataItem with the alias _nodeIndex, _edgeIndex, _nodeFulltext or _edgeFulltext to a list of Index objects.
      TABLE _privilege asPriviliege() Priviliege Maps DataItem with the alias _privilege to a Priviliege object.
      TABLE _policy asPolicy() Policy/List[Policy] Maps DataItem with the alias _policy to one or a list of Policy objects.
      TABLE _user asUsers() User/List[User] Maps DataItem with the alias _user to one or a list of User objects.
      TABLE _statistic asStats() Stats Maps DataItem with the alias _statistic to a Stats object.
      TABLE _top asProcesses() List[Process] Maps DataItem with the alias _top to a list of Process objects.
      TABLE _task asTasks() List[Task] Maps DataItem with the alias _task to a list of Task objects.
      TABLE Any asTable() Table Maps TABLE-type DataItem to a Table object.
      ATTR Any asAttr() Attr Maps ATTR-type DataItem to a Attr object.

      Driver Types

      Objects of all driver types support getter methods to retrieve the value of a field and setter methods to set the value of a field, even if they are not explicitly listed below.

      Node

      A Node object has the following fields:

      Field Type
      Description
      uuid int Node UUID
      id str Node ID
      schema str Node Schema
      values dict Node custom properties

      Methods on a Node object:

      Method
      Return
      Description
      get("<propertyName>") Any Get value of the given custom property of the node.
      set("<propertyName>", <propertyValue>) Set value for the given custom property of the node; or add a key-value pair to the values of the node if the given <propertyName> does not exist.

      response = Conn.uql("find().nodes() as n return n{*} limit 5")
      nodes = response.alias("n").asNodes()
      
      print("ID of the 1st node:", nodes[0].getID())
      print("Store name of the 1st node", nodes[0].get("storeName"))
      

      ID of the 1st node: 47370-257954
      Store name of the 1st node: Meritxell, 96
      

      Edge

      An Edge object has the following fields:

      Field Type
      Description
      uuid int Edge UUID
      from_uuid int Start node UUID of the edge
      to_uuid int End node UUID of the edge
      from_id str Start node ID of the edge
      to_id str End node ID of the edge
      schema dtr Edge Schema
      values dict Edge custom properties

      Methods on an Edge object:

      Method
      Return
      Description
      get("<propertyName>") Any Get value of the given custom property of the edge.
      set("<propertyName>", <propertyValue> Set value for the given custom property of the edge; or add a key-value pair to the values of the edge if the given <propertyName> does not exist.

      response = Conn.uql("find().edges() as e return e{*} limit 5")
      edges = response.alias("e").asEdges()
      
      print("Values of the 1st edge:", edges[0].getValues())
      

      Values of the 1st edge: {'distanceMeters': 20, 'duration': '21s', 'staticDuration': '25s', 'travelMode': 'Walk', 'transportationCost': 46}
      

      Path

      A Path object has the following fields:

      Field
      Type
      Description
      nodes List[Node] Node list of the path
      edges List[Edge] Edge list of the path
      nodeSchemas Dict[str, Schema] Map of all node schemas of the path
      edgeSchemas Dict[str, Schema] Map of all edge schemas of the path

      Methods on a Path object:

      Method
      Return
      Description
      length() int Get length of the path, i.e., the number of edges in the path.

      response = Conn.uql("n().e()[:2].n() as paths return paths{*} limit 5")
      paths = response.alias("paths").asPaths()
      
      print("Length of the 1st path:", paths[0].length())
      
      print("Edges in the 1st path:")
      edges = paths[0].getEdges()
      for edge in edges:
          print(edge)
      
      print("Information of the 2nd node in the 1st path:")
      nodes = paths[0].getNodes()
      print(nodes[1])
      

      Length of the 1st path: 2
      Edges in the 1st path: 
      {'schema': 'transport', 'from_id': '15219-158845', 'from_uuid': 20, 'to_id': '47370-257954', 'to_uuid': 1, 'values': {'distanceMeters': 10521283, 'duration': '527864s', 'staticDuration': '52606s', 'travelMode': 'Airplane', 'transportationCost': 21043}, 'uuid': 591}
      {'schema': 'transport', 'from_id': '15474-156010', 'from_uuid': 21, 'to_id': '15219-158845', 'to_uuid': 20, 'values': {'distanceMeters': 233389, 'duration': '13469s', 'staticDuration': '1167s', 'travelMode': 'Airplane', 'transportationCost': 467}, 'uuid': 599}
      Information of the 2nd node in the 1st path: 
      {'id': '15219-158845', 'schema': 'warehouse', 'values': {'brand': 'Starbucks', 'storeName': 'Las Palmas', 'ownershipType': 'Licensed', 'city': 'Pilar', 'provinceState': 'B', 'timezone': 'GMT-03:00 America/Argentina/Bu', 'point': 'POINT(-33.390000 -60.220000)'}, 'uuid': 20}
      

      Graph

      A Graph object has the following fields:

      Field
      Type
      Description
      node_table List[Node] Node list of the path
      edge_table List[Edge] Edge list of the path

      response = Conn.uql("n(as n1).re(as e).n(as n2).limit(3) with toGraph(collect(n1), collect(n2), collect(e)) as graph return graph", requestConfig)
      graph = response.alias("graph").asGraph()
      
      print("Node IDs:")
      nodes = graph.node_table
      for node in nodes:
          print(node.getID())
      
      print("Edge UUIDs:")
      edges = graph.edge_table
      for edge in edges:
          print(edge.getUUID())
      

      Node IDs:
      24604-238367
      34291-80114
      47370-257954
      29791-255373
      23359-229184
      Edge UUIDs:
      344
      320
      346
      

      GraphSet

      A GraphSet object has the following fields:

      Field
      Type
      Description
      id int Graphset ID
      name str Graphset name
      description str Graphset description
      totalNodes int Total number of nodes in the graphset
      totalEdges int Total number of edges in the graphset
      status str Graphset status (MOUNTED, MOUNTING, or UNMOUNTED)

      response = Conn.uql("show().graph()")
      graphs = response.alias("_graph").asGraphSets()
      for graph in graphs:
          if graph.status == "UNMOUNTED":
              print(graph.name)
      

      DFS_EG
      cyber
      netflow
      

      Schema

      A Schema object has the following fields:

      Field
      Type
      Description
      name str Schema name
      description str Schema description
      properties List[Property] Property list of the schema
      DBType DBType Schema type (0 for nodes, 1 for edge)
      total int Total number of nodes or edges of the schema

      response = Conn.uql("show().node_schema()")
      schemas = response.alias("_nodeSchema").asSchemas()
      for schema in schemas:
          print(schema.name, "has", schema.total, "nodes")
      

      default has 0 nodes
      member has 7 nodes
      organization has 19 nodes
      

      Property

      A Property object has the following fields:

      Field
      Type
      Description
      name str Property name
      description str Property description
      schema str Associated schema of the property
      type PropertyTypeStr Property data type, defaults to PropertyTypeStr.PROPERTY_STRING
      subTypes List[PropertyTypeStr] Property data sub type
      lte bool Property LTE status (true or false)

      response = Conn.uql("show().property()")
      properties = response.alias("_nodeProperty").asProperties()
      for property in properties:
          print(property.name)
      

      title
      profile
      age
      name
      logo
      

      Algo

      An Algo object has the following fields:

      Field
      Type
      Description
      name str Algorithm name
      description str Algorithm description
      version str Algorithm version
      parameters dict Algorithm parameters
      write_to_file_parameters dict Algorithm file writeback parameters
      write_to_db_parameters dict Algorithm property writeback parameters
      result_opt str The code defines the execution methods supported by the algorithm.

      response = Conn.uql("show().algo()")
      algos = response.alias("_algoList").asAlgos()
      print(algos[0])
      

      {'name': 'celf', 'description': 'celf', 'version': '1.0.0', 'result_opt': '25', 'parameters': {'seedSetSize': 'size_t,optional,1 as default', 'monteCarloSimulations': 'size_t,optional, 1000 as default', 'propagationProbability': 'float,optional, 0.1 as default'}, 'write_to_db_parameters': {}, 'write_to_file_parameters': {'filename': 'set file name'}}
      

      Exta

      An exta is a custom algorithm developed by users.

      An Exta object has the following fields:

      Field
      Type
      Description
      name str Exta name
      author str Exta author
      version str Exta version
      detail str Content of the YML configuration file of the Exta

      response = Conn.uql("show().exta()")
      extas = response.alias("_extaList").asExtas()
      print(extas[0].name)
      

      page_rank
      

      Index

      An Index object has the following fields:

      Field
      Type
      Description
      name str Index name
      properties str Property name of the index
      schema str Schema name of the index
      status str Index status (done or creating)
      size str Index size in bytes
      DBType DBType Index type (DBNODE or DBEDGE)

      response = Conn.uql("show().index()")
      indexList = response.alias("_nodeIndex").asIndexes()
      
      for index in indexList:
          print(index.schema, index.properties, index.size)
      

      account name 0
      movie name 2526
      

      response = Conn.uql("show().fulltext()")
      indexList = response.alias("_edgeFulltext").asIndexes()
      
      for index in indexList:
          print(index.schema, index.properties, index.schema)
      

      contentFull content review
      

      Privilege

      A Privilege object has the following fields:

      Field
      Type
      Description
      systemPrivileges List[str] System privileges
      graphPrivileges List[str] Graph privileges

      response = Conn.uql("show().privilege()")
      privilege = response.alias("_privilege").asPrivilege()
      print(privilege.systemPrivileges)
      

      ["TRUNCATE","COMPACT","CREATE_GRAPH","SHOW_GRAPH","DROP_GRAPH","ALTER_GRAPH","MOUNT_GRAPH","UNMOUNT_GRAPH","TOP","KILL","STAT","SHOW_POLICY","CREATE_POLICY","DROP_POLICY","ALTER_POLICY","SHOW_USER","CREATE_USER","DROP_USER","ALTER_USER","GRANT","REVOKE","SHOW_PRIVILEGE"]
      

      Policy

      A Policy object has the following fields:

      Field
      Type
      Description
      name str Policy name
      systemPrivileges List[str] System privileges included in the policy
      graphPrivileges dict Graph privileges and the corresponding graphsets included in the policy
      propertyPrivileges dict Property privileges included in the policy
      policies List[str] Policies included in the policy

      response = Conn.uql("show().policy()")
      policyList = response.alias("_policy").asPolicies()
      
      for policy in policyList:
          print(policy.name)
      

      manager
      operator
      

      User

      A User object has the following fields:

      Field
      Type
      Description
      username str Username
      create str When the user was created
      systemPrivileges List[str] System privileges granted to the user
      graphPrivileges dict Graph privileges and the corresponding graphsets granted to the user
      propertyPrivileges dict Property privileges granted to the user
      policies List[str] Policies granted to the user

      response = Conn.uql("show().user('Tester')")
      user = response.alias("_user").asUsers()
      
      print(user.toJSON())
      

      {"create": 1721974206, "graphPrivileges": "{}", "policies": "[]", "propertyPrivileges": "{\"node\":{\"read\":[],\"write\":[[\"miniCircle\",\"account\",\"name\"]],\"deny\":[]},\"edge\":{\"read\":[],\"write\":[],\"deny\":[]}}", "systemPrivileges": "[]", "username": "Tester"}
      

      Stats

      A Stats object has the following fields:

      Field
      Type
      Description
      cpuUsage str CPU usage in percentage
      memUsage str Memory usage in megabytes
      expiredDate str Expiration date of the license
      cpuCores str Number of CPU cores
      company str Company name
      serverType str Server type
      version str Version of the server

      response = Conn.uql("stats()")
      stats = response.get(0).asStats()
      print("CPU usage (%):", stats.cpuUsage)
      print("Memory usage:", stats.memUsage)
      

      CPU usage (%): 5.415697
      Memory usage: 9292.265625
      

      Process

      A Process object has the following fields:

      Field
      Type
      Description
      processId String Process ID
      processUql String The UQL run with the process
      status String Process status
      duration String The duration in seconds the task has run so far

      requestConfig = RequestConfig(graphName="amz")
      
      response = Conn.uql("top()", requestConfig)
      processList = response.alias("_top").asProcesses()
      for process in processList:
          print(process.processId)
      

      a_2_569_2
      a_3_367_1
      

      Task

      A Task object has the following fields:

      Field
      Type
      Description
      Task_info Task_info Task information including task_id, algo_name, start_time, writing_start_time, end_time, etc.
      param dict Algorithm parameters and their corresponding values
      result dict Algorithm result and statistics and their corresponding values

      requestConfig = RequestConfig(graphName="miniCircle")
      
      response = Conn.uql("show().task()", requestConfig)
      tasks = response.alias("_task").asTasks()
      print(tasks[0].task_info)
      print(tasks[0].param)
      print(tasks[0].result)
      

      {'task_id': 77954, 'server_id': 2, 'algo_name': 'louvain', 'start_time': 1728543848, 'writing_start_time': 1728543848, 'end_time': 1728543848, 'time_cost': 0, 'TASK_STATUS': 3, 'return_type': <ultipa.types.types_response.Return_Type object at 0x0000025E53C0F940>}
      {"phase1_loop_num":"20","min_modularity_increase":"0.001"}
      {'community_count': '10', 'modularity': '0.535017', 'result_files': 'communityID,ids,num'}
      

      Table

      A Table object has the following fields:

      Field
      Type
      Description
      name str Table name
      headers List[dict] Table headers
      rows List[List] Table rows

      Methods on a Table object:

      Method
      Return
      Description
      headerToDicts() List[Dict] Convert all rows of the table to a key-value list.

      response = Conn.uql("find().nodes() as n return table(n._id, n._uuid) as myTable limit 5")
      table = response.alias("myTable").asTable()
      rows = table.headerToDicts()
      print("2nd row in table:", rows[1])
      

      2nd row in table: {'n._id': 'u604510', 'n._uuid': 2}
      

      Attr

      A Attr object has the following fields:

      Field
      Type
      Description
      name str Attr name
      values any Attr rows
      type ResultType Attr type

      response = Conn.uql("find().nodes({@ad}) as n return n.brand limit 5")
      attr = response.alias("n.brand").asAttr()
      print(attr.values)
      

      [14655, 14655, 14655, 14655, 434760]
      
      Please complete the following information to download this book
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写