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

v5.0
Search
    English
    v5.0

      Driver Data Structures

      The Ultipa Java driver provides a set of data structures designed to facilitate seamless interaction with the graph database. All data structures support getter methods to retrieve an attribute and setter methods to set the value of an attribute.

      Node

      A Node object includes the following attributes:

      Attribute
      Type
      Default
      Description
      uuid Long / Node _uuid.
      id String / Node _id.
      schema String / Name of the schema the node belongs to.
      values Value / Node property key-value pairs.

      RequestConfig requestConfig = new RequestConfig();
      requestConfig.setGraph("miniCircle");
      Response response = driver.gql("MATCH (n) RETURN n LIMIT 5", requestConfig);
      List<Node> nodes = response.alias("n").asNodes();
      
      System.out.println("ID of the first node: " + nodes.get(0).getID());
      System.out.println("Name of the first node: " + nodes.get(0).get("name"));
      

      ID of the first node: ULTIPA800000000000004B
      Name of the first node: Claire89
      

      Edge

      An Edge object includes the following attributes:

      Attribute
      Type
      Default
      Description
      uuid Long / Edge _uuid.
      fromUuid Long / Source node _uuid of the edge.
      toUuid Long / Destination node _uuid of the edge.
      from String / Source node _id of the edge.
      to String / Destination node _id of the edge.
      schema String / Name of the schema the edge belongs to.
      values Value / Edge property key-value pairs.

      RequestConfig requestConfig = new RequestConfig();
      requestConfig.setGraph("miniCircle");
      Response response = driver.gql("MATCH ()-[e]->() RETURN e LIMIT 3", requestConfig);
      List<Edge> edges = response.alias("e").asEdges();
      
      for (Edge edge : edges) {
          System.out.println(edge.getValues());
      }
      

      {toUuid=108, uuid=1661, fromUuid=59, timestamp=Sun Oct 14 06:27:42 CST 2018}
      {toUuid=15, uuid=31, fromUuid=59}
      {toUuid=1012, uuid=1368, fromUuid=59, datetime=2019-03-23T17:09:12}
      

      Path

      A Path object includes the following attributes:

      Attribute
      Type
      Default
      Description
      nodeUUids List<Long> / The list of node _uuids in the path.
      edgeUuids List<Long> / The list of edge _uuids in the path
      nodes Map<Long, Node> {} A map of nodes in the path, where the key is the node’s _uuid, and the value is the corresponding node.
      edges Map<Long, Edge> {} A map of edges in the path, where the key is the edge’s _uuid, and the value is the corresponding edge.

      Methods on a Path object:

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

      RequestConfig requestConfig = new RequestConfig();
      requestConfig.setGraph("miniCircle");
      Response response = driver.gql("MATCH p = ()-[]-()-[]-() RETURN p LIMIT 3", requestConfig);
      Graph graph = response.alias("p").asGraph();
      
      System.out.println("Nodes in each returned path:");
      List<Path> paths = graph.getPaths();
      for (Path path : paths) {
          System.out.println(path.getNodeUUIDs());
      }
      

      Nodes in each returned path:
      [6196955286285058052, 7998395137233256457, 8214567919347040275]
      [6196955286285058052, 7998395137233256457, 8214567919347040275]
      [6196955286285058052, 7998395137233256457, 5764609722057490441]
      

      Graph

      A Graph object includes the following attributes:

      Attribute
      Type
      Default
      Description
      paths List<Path> [] The list of the returned paths.
      nodes Map<Long, Node> {} A map of nodes in the graph, where the key is the node’s _uuid, and the value is the corresponding node.
      edges Map<Long, Edge> {} A map of edges in the graph, where the key is the edge’s _uuid, and the value is the corresponding edge.

      Methods on a Graph object:

      Method
      Parameter
      Return
      Description
      addNode() node: Node / Add a node to nodes.
      addEdge() edge: Edge / Add an edge to edges.

      RequestConfig requestConfig = new RequestConfig();
      requestConfig.setGraph("miniCircle");
      Response response = driver.gql("MATCH p = ()-[]-()-[]-() RETURN p LIMIT 3", requestConfig);
      Graph graph = response.alias("p").asGraph();
      
      System.out.println("Nodes in each returned path:");
      List<Path> paths = graph.getPaths();
      for (Path path : paths) {
          System.out.println(path.getNodeUUIDs());
      }
      
      System.out.println("----------");
      System.out.println("Nodes in the graph formed by all returned paths:");
      System.out.println(graph.getNodes().keySet());
      

      Nodes in each returned path:
      [6196955286285058052, 7998395137233256457, 8214567919347040275]
      [6196955286285058052, 7998395137233256457, 8214567919347040275]
      [6196955286285058052, 7998395137233256457, 5764609722057490441]
      ----------
      Nodes in the graph formed by all returned paths:
      [8214567919347040275, 6196955286285058052, 7998395137233256457, 5764609722057490441]
      

      GraphSet

      A GraphSet object includes the following attributes:

      Attribute
      Type
      Default
      Description
      id String / Graph ID.
      name String / Graph name.
      totalNodes Long / Total number of nodes in the graph.
      totalEdges Long / Total number of edges in the graph.
      shards List<String> [] The list of IDs of shard servers where the graph is stored.
      partitionBy String Crc32 The hash function used for graph sharding, which can be Crc32, Crc64WE, Crc64XZ, or CityHash64.
      status String / Graph status, which can be NORMAL, LOADING_SNAPSHOT, CREATING, DROPPING, or SCALING.
      description String / Graph description.
      slotNum int 0 The number of slots used for graph sharding.

      Response response = driver.gql("SHOW GRAPH");
      List<GraphSet> graphs = response.alias("_graph").asGraphSets();
      
      for (GraphSet graph : graphs) {
          System.out.println(graph.getName());
      }
      

      DFS_EG
      cyber
      netflow
      

      Schema

      A Schema object includes the following attributes:

      Attribute
      Type
      Default
      Description
      name String / Schema name
      dbType DBType / Schema type, which can be DBNODE or DBEDGE.
      properties List<Property> / The list of properties associated with the schema.
      description String / Schema description
      total Long 0 Total number of nodes or edges belonging to the schema.
      id int / Schema ID.
      stats List<SchemaStat> / A list of SchemaStat objects; each SchemaStat includes attributes name (schema name), dbType (schema type), fromSchema (source node schema), toSchema (destination node schema), and count (count of nodes or edges).

      RequestConfig requestConfig = new RequestConfig();
      requestConfig.setGraph("miniCircle");
      Response response = driver.gql("SHOW NODE SCHEMA", requestConfig);
      List<Schema> schemas = response.alias("_nodeSchema").asSchemas();
      
      for (Schema schema : schemas) {
          System.out.println(schema.getName());
      }
      

      default
      account
      celebrity
      country
      movie
      

      Property

      A Property object includes the following attributes:

      Attribute
      Type
      Default
      Description
      name String / Property name.
      type Ultipa.PropertyType / Property value type, which can be INT32, UINT32, INT64, UINT64, FLOAT, DOUBLE, DECIMAL, STRING, TEXT, DATETIME, TIMESTAMP, BLOB, BOOL, POINT, LIST, SET, MAP, NULL, UUID, ID, FROM, FROM_UUID, TO, TO_UUID, IGNORE, or UNSET.
      subType List<Ultipa.PropertyType> / If the type is LIST or SET, sets its element type; only one UltipaPropertyType is allowed in the list, which can be INT32, UINT32, INT64, UINT64, FLOAT, DOUBLE, DECIMAL, STRING, TEXT, DATETIME, or TIMESTAMP.
      schema String / The associated schema of the property.
      description String / Property description.
      lte Boolean / Whether the property is LTE-ed.
      read Boolean / Whether the property is readable.
      write Boolean / Whether the property can be written.
      encrypt String / Encryption method of the property, which can be AES128, AES256, RSA, or ECC.
      decimalExtra DecimalExtra / The precision (1–65) and scale (0–30) of the DECIMAL type.

      RequestConfig requestConfig = new RequestConfig();
      requestConfig.setGraph("miniCircle");
      Response response = driver.gql("SHOW NODE account PROPERTY", requestConfig);
      List<Property> properties = response.alias("_nodeProperty").asProperties();
      
      for (Property property : properties) {
          System.out.println(property.getName());
      }
      

      title
      profile
      age
      name
      logo
      

      Attr

      A Attr object includes the following attributes:

      Attribute
      Type
      Default
      Description
      name String / Name of the returned alias.
      values List<Object> / The returned values.
      propertyType Ultipa.PropertyType / Type of the results.

      RequestConfig requestConfig = new RequestConfig();
      requestConfig.setGraph("miniCircle");
      Response response = driver.gql("MATCH (n:account) RETURN n.name LIMIT 3", requestConfig);
      Attr attr = response.alias("n.name").asAttr();
      
      System.out.println("name: " + attr.getName());
      System.out.println("values: " + attr.getValues());
      System.out.println("type: " + attr.getPropertyType());
      

      name: n.name
      values: ['Velox', 'K03', 'Lunatique']
      type: STRING
      

      Table

      A Table object includes the following attributes:

      Attribute
      Type
      Default
      Description
      name String / Table name.
      headers List<Header> / Table headers.
      rows List<List<Object>> / Table rows.

      Methods on a Table object:

      Method
      Return
      Description
      toKV() List<Value> Convert all rows in the table to a list of dictionaries.

      RequestConfig requestConfig = new RequestConfig();
      requestConfig.setGraph("miniCircle");
      Response response = driver.gql("MATCH (n:account) RETURN table(n._id, n.name) LIMIT 3", requestConfig);
      Table table = response.get(0).asTable();
      
      System.out.println("Header:");
      for (Header header : table.getHeaders()) {
          System.out.println(header.getPropertyName() + " - " + header.getPropertyType());
      }
      
      System.out.println("First Row:");
      List<Value> rows = table.toKV();
      if (!rows.isEmpty()) {
          System.out.println(rows.get(0));
      }
      

      Header:
      n._id - STRING
      n.name - STRING
      First Row:
      {n._id=ULTIPA800000000000003B, n.name=Velox}
      

      HDCGraph

      An HDCGraph object includes the following attributes:

      Attribute
      Type
      Default
      Description
      name String / HDC graph name.
      graphName String / The source graph from which the HDC graph is created.
      status String / HDC graph status.
      stats String / Statistics of the HDC graph.
      isDefault String / Whether it is the default HDC graph of the source graph.
      hdcServerName String / Name of the HDC server that hosts the HDC graph.
      hdcServerStatus String / Status of the HDC server that hosts the HDC graph.
      config String / Configurations of the HDC graph.

      RequestConfig requestConfig = new RequestConfig();
      requestConfig.setGraph("miniCircle");
      Response response = driver.uql("hdc.graph.show()", requestConfig);
      List<HDCGraph> hdcGraphs = response.alias("_hdcGraphList").asHDCGraphs();
      
      for (HDCGraph hdcGraph : hdcGraphs) {
          System.out.println(hdcGraph.getName() + " on " + hdcGraph.getHdcServerName());
      }
      

      miniCircle_hdc_graph on hdc-server-1
      miniCircle_hdc_graph2 on hdc-server-2
      

      Algo

      An Algo object includes the following attributes:

      Attribute
      Type
      Default
      Description
      name String / Algorithm name.
      type String / Algorithm type.
      version String / Algorithm version.
      params List<AlgoParam> / Algorithm parameters, each AlgoParam has attributesname and desc.
      writeSupportType String / The writeback types supported by the algorithm.
      canRollback String / Whether the algorithm version supports rollback.
      configContext String / The configurations of the algorithm.

      Response response = driver.uql("show().hdc('hdc-server-1')");
      List<Algo> algos = response.alias("_algoList").asAlgos();
      
      for (Algo algo : algos) {
        System.out.println(algo.getName() + " supports writeback types: " + algo.getWriteSupportType());
      }
      

      fastRP supports writeback types: DB,FILE
      struc2vec supports writeback types: DB,FILE
      

      Index

      An Index object includes the following attributes:

      Attribute
      Type
      Default
      Description
      id str / Index ID.
      name str / Index name.
      properties str / Properties associated with the index.
      schema str / The schema associated with the index
      status str / Index status.
      size str / Index size in bytes.
      dbType DBType / Index type, which can be DBNODE or DBEDGE.

      requestConfig = RequestConfig(graph="miniCircle")
      response = Conn.gql("SHOW NODE INDEX", requestConfig)
      indexList = response.alias("_nodeIndex").asIndexes()
      for index in indexList:
          print(index.schema, "-", index.properties, "-", index.schema)
      

      account - gender(6),year - account
      

      Privilege

      A Privilege object includes the following attributes:

      Attribute
      Type
      Default
      Description
      name str / Privilege name.
      level PrivilegeLevel / Privilege level, which can be SystemLevel or Graphlevel.

      response = Conn.uql("show().privilege()")
      privileges = response.alias("_privilege").asPrivileges()
      
      graphPrivileges = [privilege.name for privilege in privileges if privilege.level == PrivilegeLevel.Graphlevel]
      print("Graph Privileges:", graphPrivileges)
      
      systemPrivileges = [privilege.name for privilege in privileges if privilege.level == PrivilegeLevel.SystemLevel]
      print("System Privileges:", systemPrivileges)
      

      Graph Privileges: ['READ', 'INSERT', 'UPSERT', 'UPDATE', 'DELETE', 'CREATE_SCHEMA', 'DROP_SCHEMA', 'ALTER_SCHEMA', 'SHOW_SCHEMA', 'RELOAD_SCHEMA', 'CREATE_PROPERTY', 'DROP_PROPERTY', 'ALTER_PROPERTY', 'SHOW_PROPERTY', 'CREATE_FULLTEXT', 'DROP_FULLTEXT', 'SHOW_FULLTEXT', 'CREATE_INDEX', 'DROP_INDEX', 'SHOW_INDEX', 'LTE', 'UFE', 'CLEAR_JOB', 'STOP_JOB', 'SHOW_JOB', 'ALGO', 'CREATE_PROJECT', 'SHOW_PROJECT', 'DROP_PROJECT', 'CREATE_HDC_GRAPH', 'SHOW_HDC_GRAPH', 'DROP_HDC_GRAPH', 'COMPACT_HDC_GRAPH', 'SHOW_VECTOR_INDEX', 'CREATE_VECTOR_INDEX', 'DROP_VECTOR_INDEX', 'SHOW_CONSTRAINT', 'CREATE_CONSTRAINT', 'DROP_CONSTRAINT']
      System Privileges: ['TRUNCATE', 'COMPACT', 'CREATE_GRAPH', 'SHOW_GRAPH', 'DROP_GRAPH', 'ALTER_GRAPH', 'TOP', 'KILL', 'STAT', 'SHOW_POLICY', 'CREATE_POLICY', 'DROP_POLICY', 'ALTER_POLICY', 'SHOW_USER', 'CREATE_USER', 'DROP_USER', 'ALTER_USER', 'SHOW_PRIVILEGE', 'SHOW_META', 'SHOW_SHARD', 'ADD_SHARD', 'DELETE_SHARD', 'REPLACE_SHARD', 'SHOW_HDC_SERVER', 'ADD_HDC_SERVER', 'DELETE_HDC_SERVER', 'LICENSE_UPDATE', 'LICENSE_DUMP', 'GRANT', 'REVOKE', 'SHOW_BACKUP', 'CREATE_BACKUP', 'SHOW_VECTOR_SERVER', 'ADD_VECTOR_SERVER', 'DELETE_VECTOR_SERVER']
      

      Policy

      A Policy object includes the following attributes:

      Attribute
      Type
      Default
      Description
      name str / Policy name.
      systemPrivileges List[str] / System privileges included in the policy.
      graphPrivileges Dict[str,List[str]] / Graph privileges included in the policy; in the dictionary, the key is the name of the graph, and the value is the corresponding graph privileges.
      propertyPrivileges PropertyPrivilege / Property privileges included in the policy; the PropertyPrivilege has attributes node and edge, both are PropertyPrivilegeElement objects.
      policies List[str] / Policies included in the policy.

      A PropertyPrivilegeElement object includes the following attributes:

      Attribute
      Type
      Default
      Description
      read List[List[str]] / A list of lists; each inner list contains three strings representing the graph, schema, and property.
      write List[List[str]] / A list of lists; each inner list contains three strings representing the graph, schema, and property.
      deny List[List[str]] / A list of lists; each inner list contains three strings representing the graph, schema, and property.

      response = Conn.uql("show().policy('Tester')")
      policy = response.alias("_policy").asPolicies()
      print("Graph Privileges:", policy.graphPrivileges)
      print("System Privileges:", policy.systemPrivileges)
      print("Property Privileges:")
      print("- Node (Read):", policy.propertyPrivileges.node.read)
      print("- Node (Write):", policy.propertyPrivileges.node.write)
      print("- Node (Deny):", policy.propertyPrivileges.node.deny)
      print("- Edge (Read):", policy.propertyPrivileges.edge.read)
      print("- Edge (Write):", policy.propertyPrivileges.edge.write)
      print("- Edge (Deny):", policy.propertyPrivileges.edge.deny)
      print("Policies:", policy.policies)
      

      Graph Privileges: {'amz': ['ALGO', 'INSERT', 'DELETE', 'UPSERT'], 'StoryGraph': ['UPDATE', 'READ']}
      System Privileges: ['TRUNCATE', 'KILL', 'TOP']
      Property Privileges:
      - Node (Read): [['*', '*', '*']]
      - Node (Write): []
      - Node (Deny): []
      - Edge (Read): []
      - Edge (Write): [['amz', '*', '*'], ['alimama', '*', '*']]
      - Edge (Deny): [['miniCircle', 'review', 'value, timestamp']]
      Policies: ['sales', 'manager']
      

      User

      A User object includes the following attributes:

      Attribute
      Type
      Default
      Description
      username str / Username.
      password str / Password.
      createdTime datetime / The time when the user was created.
      systemPrivileges List[str] / System privileges granted to the user.
      graphPrivileges Dict[str,List[str]] / Graph privileges granted to the user; in the dictionary, the key is the name of the graph, and the value is the corresponding graph privileges.
      propertyPrivileges PropertyPrivilege / Property privileges granted to the user; the PropertyPrivilege has attributes node and edge, both are PropertyPrivilegeElement objects.
      policies List[str] / Policies granted to the user.

      A PropertyPrivilegeElement object includes the following attributes:

      Attribute
      Type
      Default
      Description
      read List[List[str]] / A list of lists; each inner list contains three strings representing the graph, schema, and property.
      write List[List[str]] / A list of lists; each inner list contains three strings representing the graph, schema, and property.
      deny List[List[str]] / A list of lists; each inner list contains three strings representing the graph, schema, and property.

      response = Conn.uql("show().user('johndoe')")
      user = response.alias("_user").asUsers()
      print("Created Time:", user.createdTime)
      print("Graph Privileges:", user.graphPrivileges)
      print("System Privileges:", user.systemPrivileges)
      print("Property Privileges:")
      print("- Node (Read):", user.propertyPrivileges.node.read)
      print("- Node (Write):", user.propertyPrivileges.node.write)
      print("- Node (Deny):", user.propertyPrivileges.node.deny)
      print("- Edge (Read):", user.propertyPrivileges.edge.read)
      print("- Edge (Write):", user.propertyPrivileges.edge.write)
      print("- Edge (Deny):", user.propertyPrivileges.edge.deny)
      print("Policies:", user.policies)
      

      Created Time: 2025-04-02 11:08:38
      Graph Privileges: {'amz': ['ALGO', 'INSERT', 'DELETE', 'UPSERT'], 'StoryGraph': ['UPDATE', 'READ']}
      System Privileges: ['TRUNCATE', 'KILL', 'TOP']
      Property Privileges:
      - Node (Read): [['*', '*', '*']]
      - Node (Write): []
      - Node (Deny): []
      - Edge (Read): []
      - Edge (Write): [['amz', '*', '*'], ['alimama', '*', '*']]
      - Edge (Deny): [['miniCircle', 'review', 'value, timestamp']]
      Policies: ['sales', 'manager']
      

      Process

      A Process object includes the following attributes:

      Attribute
      Type
      Default
      Description
      processId str / Process ID
      processQuery str / The query that the process executes.
      status str / Process status.
      duration str / The duration (in seconds) the process has run.

      response = Conn.uql("top()")
      processes = response.alias("_top").asProcesses()
      for process in processes:
          print(process.processId)
      

      1049435
      

      Job

      A Job object includes the following attributes:

      Attribute
      Type
      Default
      Description
      id str / Job ID.
      graphName str / Name of the graph where the job executes on.
      query str / The query that the job executes.
      type str / Job type.
      errNsg str / Error message of the job.
      result str / Result of the job.
      startTime str / The time when the job begins.
      endTime str / The times when the job ends.
      status str / Job status.
      progress str / Progress updates for the job, such as indications that the write operation has been started.

      requestConfig = RequestConfig(graph="miniCircle")
      response = Conn.gql("SHOW JOB", requestConfig)
      jobs = response.alias("_job").asJobs()
      for job in jobs:
          if job.status == "FAILED":
              print(job.id, "-", job.errMsg, "-", job.type)
      

      51 - Fulltext name already exists. - CREATE_FULLTEXT
      42 - Fulltext name already exists. - CREATE_FULLTEXT
      26 - [engine] uuids should be unsigned integer - HDC_ALGO
      26_1 -  - HDC_ALGO
      17 - [engine] all failed, because some nodes do not exist in db - HDC_ALGO
      17_1 -  - HDC_ALGO
      
      Please complete the following information to download this book
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写