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 Blaze (v4)

Standalone

Please complete this required field.

Please complete this required field.

Please complete this required field.

Please complete this required field.

Leave it blank if an HDC service is not required.

Please complete this required field.

Leave it blank if an HDC service is not required.

Please complete this required field.

Please complete this required field.

Mac addresses of all servers, separated by line break or comma.

Please complete this required field.

Please complete this required field.

Cancel
Apply
ID
Product
Status
Cores
Maximum Shard Services
Maximum Total Cores for Shard Service
Maximum HDC Services
Maximum Total Cores for HDC Service
Applied Validity Period(days)
Effective Date
Expired Date
Mac Address
Reason for Application
Review Comment
Close
Profile
  • Full Name:
  • Phone:
  • Company:
  • Company Email:
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 Classes

      The Ultipa Node.js driver provides a set of data classes designed to facilitate seamless interaction with the graph database. All data classes 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 string / Node _uuid.
      id string / Node _id.
      schema string / Name of the schema the node belongs to.
      values [key: string]: any / Node property key-value pairs.

      const requestConfig: RequestConfig = {
        graph: "miniCircle",
      };
      const response = await conn.gql("MATCH (n) RETURN n LIMIT 5",requestConfig);
      const nodes = response.alias("n").asNodes();
      
      console.log("ID of the first node:", nodes[0].id);
      console.log("Name of the first node:", nodes[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 string / Edge _uuid.
      fromUuid string / Source node _uuid of the edge.
      toUuid string / 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 [key: string]: any / Edge property key-value pairs.

      const requestConfig: RequestConfig = {
        graph: "miniCircle",
      };
      const response = await conn.gql("MATCH ()-[e]->() RETURN e LIMIT 3",requestConfig);
      const edges = response.alias("e").asEdges();
      
      for (const edge of edges) {
        console.log(edge.values)
      }
      

      {toUuid: 13, uuid: 110, fromUuid: 7}
      {toUuid: 1032, uuid: 1391, fromUuid: 7, timestamp: 1537331913, datetime: '2018-09-19 12:38:33'}
      {toUuid: 1005, uuid: 1390, fromUuid: 7, timestamp: 1544118960, datetime: '2018-12-07 01:56:00'}
      

      Path

      A Path object includes the following attributes:

      Attribute
      Type
      Default
      Description
      nodeUuids string[] / The list of node _uuids in the path.
      edgeUuids string[] / The list of edge _uuids in the path
      nodes Map<string, 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<string, 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() number Gets the length of the path, i.e., the number of edges in the path.

      const requestConfig: RequestConfig = {
        graph: "miniCircle",
      };
      const response = await conn.gql("MATCH p = ()-[]-()-[]-() RETURN p LIMIT 3", requestConfig);
      const graph = response.alias("p").asGraph();
      
      console.log("Nodes in each returned path:")
      const paths = graph.getPaths();
      for (const path of paths) {
        console.log(path.nodeUuids)
      }
      

      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 Path[] [] The list of the returned paths.
      nodes Map<string, 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<string, 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.

      const requestConfig: RequestConfig = {
        graph: "miniCircle",
      };
      const response = await conn.gql("MATCH p = ()-[]-()-[]-() RETURN p LIMIT 3", requestConfig);
      const graph = response.alias("p").asGraph();
      
      console.log("Nodes in each returned path:")
      const paths = graph.getPaths();
      for (const path of paths) {
        console.log(path.nodeUuids)
      }
      
      console.log("----------");
      console.log("Nodes in the graph formed by all returned paths:");
      console.log(graph.nodes.keys());
      

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

      GraphSet

      A GraphSet object includes the following attributes:

      Attribute
      Type
      Default
      Description
      id string / Graph ID.
      name string / Graph name.
      totalNodes string / Total number of nodes in the graph.
      totalEdges string / Total number of edges in the graph.
      shards 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 number 0 The number of slots used for graph sharding.

      const response = await conn.gql("SHOW GRAPH");
      const graphs = response.alias("_graph").asGraphSets();
      
      for (const graph of graphs) {
        console.log(graph.name)
      }
      

      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 Property[] / The list of properties associated with the schema.
      description string / Schema description
      total string 0 Total number of nodes or edges belonging to the schema.
      id string / Schema ID.
      stats SchemaStat[] / A list of SchemaStat objects; each SchemaStat includes attributes schema (schema name), dbType (schema type), fromSchema (source node schema), toSchema (destination node schema), and count (count of nodes or edges).

      const requestConfig: RequestConfig = {
        graph: "miniCircle",
      };
      const response = await conn.gql("SHOW NODE SCHEMA", requestConfig);
      const schemas = response.alias("_nodeSchema").asSchemas();
      
      for (const schema of schemas) {
        console.log(schema.name)
      }
      

      default
      account
      celebrity
      country
      movie
      

      Property

      A Property object includes the following attributes:

      Attribute
      Type
      Default
      Description
      name string / Property name.
      type UltipaPropertyType / 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 UltipaPropertyType[] / 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.

      const requestConfig: RequestConfig = {
        graph: "miniCircle",
      };
      const response = await conn.gql("SHOW NODE account PROPERTY", requestConfig);
      const properties = response.alias("_nodeProperty").asProperties();
      
      for (const property of properties) {
        console.log(property.name)
      }
      

      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 object[] / The returned values.
      propertyType UltipaPropertyType / Type of the results.

      const requestConfig: RequestConfig = {
        graph: "miniCircle",
      };
      const response = await conn.gql("MATCH (n:account) RETURN n.name LIMIT 3");
      const attr = response.alias("n.name").asAttr();
      console.log("name:", attr.name);
      console.log("values:", attr.values);
      console.log("type:", attr.propertyType);
      

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

      Table

      A Table object includes the following attributes:

      Attribute
      Type
      Default
      Description
      name string / Table name.
      headers Header[] / Table headers.
      rows any[][] / Table rows.

      Methods on a Table object:

      Method
      Return
      Description
      toKV() any[] Convert all rows in the table to an array of key-value objects.

      const requestConfig: RequestConfig = {
        graph: "miniCircle",
      };
      const response = await conn.gql(
        "MATCH (n:account) RETURN table(n._id, n.name) LIMIT 3",
        requestConfig
      );
      const table = response.get(0).asTable();
      
      console.log("Header:");
      for (const header of table.getHeaders()) {
        console.log(header.propertyName, " - ", header.propertyType);
      }
      
      console.log("First Row:");
      const rows = table.toKV();
      if (rows.length != 0) {
        console.log(rows[0]);
      }
      

      Header:
      n._id - 7
      n.name - 7
      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.

      const requestConfig: RequestConfig = {
        graph: "miniCircle",
      };
      const response = await conn.uql("hdc.graph.show()", requestConfig);
      const hdcGraphs = response.alias("_hdcGraphList").asHDCGraphs();
      
      for (const hdcGraph of hdcGraphs) {
        console.log(hdcGraph.name, "on", hdcGraph.hdcServerName);
      }
      

      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 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.

      const requestConfig: RequestConfig = {
        graph: "miniCircle",
      };
      const response = await conn.uql("show().hdc('hdc-server-1')");
      const algos = response.alias("_algoList").asAlgos();
      
      for (const algo of algos) {
        if (algo.type == "algo") {
          console.log(
            `${algo.name} supports writeback types: ${algo.writeSupportType}`
          );
        }
      }
      

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

      Projection

      A Projection object includes the following attributes:

      Attribute
      Type
      Default
      Description
      name string / Projection name.
      graphName string / The source graph from which the projection is created.
      status string / Projection status.
      stats string / Statistics of the projection.
      config string / Configurations of the projection.

      const requestConfig: RequestConfig = {
        graph: "miniCircle",
      };
      const response = await conn.uql("show().projection()", requestConfig);
      const projections = response.alias("_projectionList").asProjections();
      
      for (const projection of projections) {
        console.log(projection.name)
      }
      

      miniCircle_projection_1
      

      Index

      An Index object includes the following attributes:

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

      const requestConfig: RequestConfig = {
        graph: "miniCircle",
      };
      const response = await conn.gql("SHOW NODE INDEX", requestConfig);
      const indexList = response.alias("_nodeIndex").asIndexes();
      
      for (const index of indexList) {
        console.log(index.schema, "-", index.properties)
      }
      

      account - gender(6)
      account - year
      

      Privilege

      A Privilege object includes the following attributes:

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

      const response = await conn.uql("show().privilege()");
      const privileges = response.alias("_privilege").asPrivileges();
      
      const graphPrivilegeNames = privileges
        .filter((p) => p.level === PrivilegeLevel.GraphLevel)
        .map((p) => p.name)
        .join(", ");
      console.log("Graph privileges: " + graphPrivilegeNames);
      
      const systemPrivilegeNames = privileges
        .filter((p) => p.level === PrivilegeLevel.SystemLevel)
        .map((p) => p.name)
        .join(", ");
      console.log("System privileges: " + systemPrivilegeNames);
      

      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 string / Policy name.
      systemPrivileges string[] / System privileges included in the policy.
      graphPrivileges Map<string, string[]> / Graph privileges included in the policy; in the map, 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 string[] / Policies included in the policy.

      A PropertyPrivilegeElement object includes the following attributes:

      Attribute
      Type
      Default
      Description
      read string[][] / An array of arrays; each inner array contains three strings representing the graph, schema, and property.
      write string[][] / An array of arrays; each inner array contains three strings representing the graph, schema, and property.
      deny string[][] / An array of arrays; each inner array contains three strings representing the graph, schema, and property.

      const response = await conn.uql("show().policy('Tester')");
      const policy = response.alias("_policy").asPolicies();
      console.log("Graph privileges: ", policy[0].graphPrivileges);
      console.log("System privileges: ", policy[0].systemPrivileges);
      console.log("Property privileges:");
      console.log("- Node (Read): ", policy[0].propertyPrivileges.node.read);
      console.log("- Node (Write): ", policy[0].propertyPrivileges.node.write);
      console.log("- Node (Deny): ", policy[0].propertyPrivileges.node.deny);
      console.log("- Edge (Read): ", policy[0].propertyPrivileges.edge.read);
      console.log("- Edge (Write): ", policy[0].propertyPrivileges.edge.write);
      console.log("- Edge (Deny): ", policy[0].propertyPrivileges.edge.deny);
      console.log("Policies: ", policy[0].policies)
      

      Graph Privileges: Map(3) {'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 string / Username.
      password string / Password.
      createdTime Date / The time when the user was created.
      systemPrivileges string[] / System privileges granted to the user.
      graphPrivileges Map<string, string[]> / Graph privileges granted to the user; in the map, 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 string[] / Policies granted to the user.

      A PropertyPrivilegeElement object includes the following attributes:

      Attribute
      Type
      Default
      Description
      read string[][] / An array of arrays; each array list contains three strings representing the graph, schema, and property.
      write string[][] / An array of arrays; each array list contains three strings representing the graph, schema, and property.
      deny string[][] / An array of arrays; each array list contains three strings representing the graph, schema, and property.

      const response = await conn.uql("show().user('johndoe')");
      const user = response.alias("_user").asUsers();
      console.log("Created Time: ", user[0].createdTime);
      console.log("Graph privileges: ", user[0].graphPrivileges);
      console.log("System privileges: ", user[0].systemPrivileges);
      console.log("Property privileges:");
      console.log("- Node (Read): ", user[0].propertyPrivileges.node.read);
      console.log("- Node (Write): ", user[0].propertyPrivileges.node.write);
      console.log("- Node (Deny): ", user[0].propertyPrivileges.node.deny);
      console.log("- Edge (Read): ", user[0].propertyPrivileges.edge.read);
      console.log("- Edge (Write): ", user[0].propertyPrivileges.edge.write);
      console.log("- Edge (Deny): ", user[0].propertyPrivileges.edge.deny);
      console.log("Policies: ", user[0].policies);
      

      Created Time: 2025-04-02 11:08:38
      Graph Privileges: Map(2){'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 string / Process ID.
      processQuery string / The query that the process executes.
      status string / Process status.
      duration string / The duration (in seconds) the process has run.

      const response = await conn.uql("top()");
      const processes = response.alias("_top").asProcesses();
      
      for (const process of processes) {
        console.log(process.processId);
      }
      

      1049435
      

      Job

      A Job object includes the following attributes:

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

      const requestConfig: RequestConfig = {
        graph: "miniCircle",
      };
      
      const response = await conn.gql("SHOW JOB", requestConfig);
      const jobs = response.alias("_job").asJobs();
      const falid_jobs = jobs.filter((job) => job.status === "FAILED");
      
      if (falid_jobs.length > 0) {
        for (const job of falid_jobs) {
          console.log(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
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写
      Privacy Policy.
      Please agree to continue.