修改密码

请输入密码
请输入密码 请输入8-64长度密码 和 email 地址不相同 至少包括数字、大写字母、小写字母、半角符号中的 3 个
请输入密码
提交

修改昵称

当前昵称:
提交

申请证书

证书详情

Please complete this required field.

  • Ultipa Graph V4

Standalone

Please complete this required field.

Please complete this required field.

服务器的MAC地址

Please complete this required field.

Please complete this required field.

取消
申请
ID
产品
状态
核数
申请天数
审批时间
过期时间
MAC地址
申请理由
审核信息
关闭
基础信息
  • 用户昵称:
  • 手机号:
  • 公司名称:
  • 公司邮箱:
  • 地区:
  • 语言:
修改密码
申请证书

当前未申请证书.

申请证书
Certificate Issued at Valid until Serial No. File
Serial No. Valid until File

Not having one? Apply now! >>>

ProductName CreateTime ID Price File
ProductName CreateTime ID Price File

No Invoice

v4.5
搜索
    v4.5

      嬴图数据与Go类型映射

      映射方法

      Response类的Get()方法或Alias()方法返回一个DataItem,内嵌在查询结果中。您需使用DataItemAs<Type>()方法将结果转换成合适的驱动类型。

      myQuery, _ := conn.Uql("find().nodes() as n return n{*} limit 5", requestConfig)
      nodeList, schemaList, _ := myQuery.Alias("n").AsNodes()
      printers.PrintNodes(nodeList, schemaList)
      

      从数据库返回的结果n包含5个节点,均为NODE类型。AsNodes()方法将这些节点转换成Node列表。

      DataItem的类型映射方法:

      UQL类型 UQL别名 方法 驱动类型
      描述
      NODE Any AsNodes() []Node 将NODE类型的DataItem映射为Node对象的列表
      NODE Any AsFirstNode() Node 将NODE类型的DataItem中的第一个节点映射为一个Node对象
      EDGE Any AsEdges() []Edge 将EDGE类型的DataItem映射为Edge对象的列表
      EDGE Any AsFirstEdge() Edge 将EDGE类型的DataItem中的第一条边映射为一个Edge对象
      PATH Any AsPaths() Path[] 将PATH类型的DataItem映射为Path对象的列表
      GRAPH Any AsGraph() Graph 将GRAPH类型的DataItem映射为一个Graph对象
      TABLE _graph AsGraphSets() []GraphSet 将别名为_graphDataItem映射为GraphSet对象的列表
      TABLE _nodeSchema, _edgeSchema AsSchemas() []Schema 将别名为_nodeSchema_edgeSchemaDataItem映射为Schema对象的列表
      TABLE _nodeProperty, _edgeProperty AsProperties() []Property 将别名为_nodeProperty_edgePropertyDataItem映射为Property对象的列表
      TABLE _algoList AsAlgos() []Algo 将别名为_algoListDataItem映射为Algo对象的列表
      TABLE _extaList AsExtas() []Exta 将别名为_extaListDataItem映射为Exta对象的列表
      TABLE _nodeIndex, _edgeIndex AsIndexes() []Index 将别名为_nodeIndex_edgeIndexDataItem映射为Index对象的列表
      TABLE _nodeFulltext, _edgeFulltext AsFullTexts() []Index 将别名为_nodeFulltext_edgeFulltextDataItem映射为Index对象的列表
      TABLE _privilege AsPriviliege() []Priviliege 将别名为_privilegeDataItem映射为Priviliege对象
      TABLE _policy AsPolicies() []Policy 将别名为_policyDataItem映射为Policy对象的列表
      TABLE _user AsUsers() []User 将别名为_userDataItem映射为User对象的列表
      TABLE _statistic AsStats() Stat 将别名为_statisticDataItem映射为一个Stat对象
      TABLE _top AsTops() []Top 将别名为_topDataItem映射为Process对象的列表
      TABLE _task AsTasks() []Task 将别名为_taskDataItem映射为Task对象的列表
      TABLE Any AsTable() Table 将TABLE类型的DataItem映射为一个Table对象
      ATTR Any AsAttr() Attr 将ATTR类型的DataItem映射为一个Attr对象

      驱动类型

      所有驱动类型的对象均支持使用getter方法获取字段值,以及使用setter方法设定字段值,即便这些对象并未在下文中明确列出。

      Node

      Node对象包含以下字段:

      字段 类型
      描述
      Name string 别名
      ID string 点的ID
      UUID uint64 点的UUID
      Schema string 点的schema
      Values object 点的自定义属性

      作用在Node对象上的方法:

      方法
      返回值
      描述
      get("<propertyName>") Object 获取点的指定自定义属性的值.
      set("<propertyName>", <propertyValue> 设置点的指定自定义属性的值;若指定的<propertyName>不存在,则为点的Values增加一个键值对

      myQuery, _ := conn.Uql("find().nodes() as n return n{*} limit 5", requestConfig)
      nodeList, _, _ := myQuery.Alias("n").AsNodes()
      
      println("ID of the 1st node:", nodeList[0].GetID())
      println("Name of the 1st node:", nodeList[0].GetSchema())
      

      ID of the 1st node: ULTIPA8000000000000001
      Name of the 1st node: account
      

      Edge

      Edge对象包含以下字段:

      字段 类型
      描述
      Name string 别名
      From string 边的起点的ID
      To string 边的终点的ID
      FromUUID uint64 边的起点的UUID
      ToUUID uint64 边的终点的UUID
      UUID uint64 边的UUID
      Schema string 边的Schema
      values object 边的自定义属性

      作用在Edge对象上的方法:

      方法
      返回值
      描述
      get("<propertyName>") Object 获取边的指定自定义属性的值
      set("<propertyName>", <propertyValue> 设置边的指定自定义属性的值;若指定的<propertyName>不存在,则为边的values增加一个键值对

      myQuery, _ := conn.Uql("find().edges() as e return e{*} limit 5", requestConfig)
      edgeList, _ := myQuery.Alias("e").AsFirstEdge()
      
      println("Values of the 1st edge:", utils.JSONString(edgeList.GetValues()))
      

      Values of the 1st edge: {"Data":{"datetime":{"Datetime":1847052190913396736,"Year":2019,"Month":1,"Day":6,"Hour":2,"Minute":57,"Second":57,"Macrosec":0,"Time":"2019-01-06T02:57:57Z"},"targetPost":703,"timestamp":{"Datetime":1847052190913396736,"Year":2019,"Month":1,"Day":6,"Hour":2,"Minute":57,"Second":57,"Macrosec":0,"Time":"2019-01-06T02:57:57+08:00"}}}
      

      Path

      Path对象包含以下字段:

      字段
      类型
      描述
      Name string 别名
      Nodes []Node 路径中的Node列表
      Edges []Edge 路径中的Edge列表
      NodeSchemas object 路径中全部点schema的映射
      EdgeSchemas object 路径中全部边schema的映射

      myQuery, _ := conn.Uql("n().e()[:2].n() as paths return paths{*} limit 5", requestConfig)
      pathList, _ := myQuery.Alias("paths").AsPaths()
      
      println("Length of the 1st path:", pathList[0].GetLength())
      println("Edge list of the 1st path:", "\n", utils.JSONString(pathList[0].GetEdges()))
      println("Information of the 2nd node in the 1st path:", "\n", utils.JSONString(pathList[0].GetNodes()[1]))
      

      Length of the 1st path: 2
      Edge list of the 1st path: 
       [{"Name":"paths","From":"u_10032","To":"u_105","FromUUID":27,"ToUUID":1,"UUID":2784,"Schema":"follow","Values":{"Data":{}}},{"Name":"paths","From":"u_10071","To":"u_10032","FromUUID":33,"ToUUID":27,"UUID":2876,"Schema":"follow","Values":{"Data":{}}}]
      Information of the 2nd node in the 1st path: 
       {"Name":"paths","ID":"u_10032","UUID":27,"Schema":"account","Values":{"Data":{"birthYear":1988,"fRate":null,"gender":"male","industry":"Transportation","name":"floatingnote","new":null,"new1":null,"new2":null,"records":null,"tags":null}}}
      

      Graph

      Graph对象包含以下字段:

      字段
      类型
      描述
      Name string 别名
      Nodes []Node 路径中的Node列表
      Edges []Edge 路径中的Edge列表
      NodeSchemas object 路径中全部点schema的映射
      EdgeSchemas object 路径中全部边schema的映射

      myQuery, _ := 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)
      resp, _ := myQuery.Alias("graph").AsGraph()
      
      println("Node IDs:")
      for _, item := range resp.Nodes {
        println(item.ID)
      }
      println("Edge UUIDs:")
      for _, item := range resp.Edges {
        println(item.UUID)
      }
      

      Node IDs:
      ad304833
      u604131
      ad534784
      ad6880
      Edge UUIDs:
      363347
      774098
      527786
      3
      

      GraphSet

      GraphSet对象包含以下字段:

      字段
      类型
      描述
      ID string 图集ID
      Name string 图集名称
      Description string 图集描述
      TotalNodes string 图集总点数
      TotalEdges string 图集总边数
      Status string 图集状态(已挂载 MOUNTED、挂载中 MOUNTING 或未挂载 UNMOUNTED)

      myQuery, _ := conn.Uql("show().graph()", nil)
      resp, _ := myQuery.Alias("_graph").AsGraphSets()
      
      for _, item := range resp {
        if item.Status == "UNMOUNTED" {
          println(item.Name)
        }
      }
      

      DFS_EG
      cyber
      cyber2
      

      Schema

      Schema对象包含以下字段:

      字段
      类型
      描述
      Name string Schema名称
      Properties []Property Schema属性列表
      Desc string Schema描述
      Type string Schema类型(点或边)
      DBType DBType Schema数据库类型(点或边)
      Total int Schema中点/边的总数量

      myQuery, _ := conn.Uql("show().node_schema()", requestConfig)
      resp, _ := myQuery.Alias("_nodeSchema").AsSchemas()
      
      for _, item := range resp {
        println(item.Name, "has", item.Total, "nodes")
      }
      

      default has 0 nodes
      user has 1092511 nodes
      ad has 846811 nodes
      

      Property

      Property对象包含以下字段:

      字段
      类型
      描述
      Name string 属性名称
      Desc string 属性描述
      Lte bool 属性的LTE状态
      Schema string 属性关联的Schema
      Type PropertyType 属性数据类型
      SubTypes []PropertyType 属性数据类型列表
      Extra string 属性的额外信息

      myQuery, _ := conn.Uql("show().node_property(@user)", requestConfig)
      resp, _ := myQuery.Alias("_nodeProperty").AsProperties()
      
      for _, item := range resp {
        if item.Lte {
          println("LTE-ed property name:", item.Name)
        }
      }
      

      LTE-ed property name: occupation
      

      Algo

      Algo对象包含以下字段:

      字段
      类型
      描述
      Name string 算法名称
      Desc string 算法描述
      Version string 算法版本
      Params object 算法的参数

      myQuery, _ := conn.Uql("show().algo()", requestConfig)
      resp, _ := myQuery.Alias("_algoList").AsAlgos()
      
      println(utils.JSONString(resp[0]))
      

      {"Name":"bipartite","Desc":"bipartite check","Version":"1.0.1","Params":{}}
      

      Exta

      Exta是由用户开发的自定义算法。

      Exta对象包含以下字段:

      字段
      类型
      描述
      Name string Exta名称
      Author string Exta作者
      Version string Exta版本
      Detail string Exta的YML配置文件内容

      myQuery, _ := conn.Uql("show().exta()")
      resp, _ := myQuery.Alias("_extaList").AsExtas()
      
      println("Exta name:", utils.JSONString(resp[0].Name))
      

      Exta name: "page_rank"
      

      Index

      Index对象包含以下字段:

      字段
      类型
      描述
      Name string 索引名称
      Properties string 索引的属性名称
      Schema string 索引的schema名称
      Status string 索引状态,包括done和creating
      Size string 索引大小(字节)
      Type string 索引类型,包括DBNODE和DBEDGE

      myQuery, _ := conn.Uql("show().index()", requestConfig)
      resp, _ := myQuery.Alias("_nodeIndex").AsIndexes()
      
      for i := 0; i < len(resp); i++ {
        println("Schema name:", resp[i].Schema)
        println("Properties:", resp[i].Properties)
        println("Size:", resp[i].Size)
      }
      

      Schema name: user
      Properties: shopping_level
      Size: 4608287
      Schema name: ad
      Properties: price
      Size: 7828760
      

      Full-text

      一个 FullText 对象包含以下字段:

      字段
      类型
      描述
      Name string 索引名称
      Properties string 索引的属性名称
      Schema string 索引的schema名称
      Status string 索引状态,包括done和creating)
      Size string 索引大小(以字节为单位)
      Type string 索引类型,包括DBNODE和DBEDGE

      myQuery, _ := conn.Uql("show().fulltext()", requestConfig)
      resp, _ := myQuery.Alias("_edgeFulltext").AsFullTexts()
      
      for i := 0; i < len(resp); i++ {
        println("Fulltext name:", resp[i].Name)
        println("Schema name:", resp[i].Schema)
        println("Properties:", resp[i].Properties)
      }
      

      Fulltext name: nameFull
      Schema name: review
      Properties: content
      

      Privilege

      Privilege对象包含以下字段:

      字段
      类型
      描述
      GraphPrivileges []string 图权限
      SystemPrivileges []string 系统权限

      myQuery, _ := conn.Uql("show().privilege()", requestConfig)
      resp, _ := myQuery.Alias("_privilege").AsPrivilege()
      
      println(utils.JSONString(resp[0].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

      Policy对象包含以下字段:

      字段
      类型
      描述
      Name string 策略名称
      GraphPrivileges GraphPrivileges 策略中的图权限和对应图集
      SystemPrivileges []string 策略中的系统权限
      PropertyPrivileges PropertyPrivileges 策略中的属性权限
      Policies []string 策略中的策略

      myQuery, _ := conn.Uql("show().policy()", requestConfig)
      resp, _ := myQuery.Alias("_policy").AsPolicies()
      
      for i := 0; i < len(resp); i++ {
        println(resp[i].Name)
      }
      

      operator
      manager
      

      User

      User对象包含以下字段:

      字段
      类型
      描述
      Username string 用户名
      Password string 密码
      Create string 用户创建时间
      GraphPrivileges GraphPrivileges 授予用户的图权限和对应图集
      SystemPrivileges []string 授予用户的系统权限
      Policies []string 授予用户的策略
      PropertyPrivileges PropertyPrivileges 授予用户的属性权限

      myQuery, _ := conn.Uql("show().user('Tester')", requestConfig)
      resp, _ := myQuery.Alias("_user").AsUsers()
      
      println("Username:", resp[0].UserName)
      println("Created at:", resp[0].Create)
      println("Graph privileges:", utils.JSONString(resp[0].GraphPrivileges))
      println("System privileges:", utils.JSONString(resp[0].SystemPrivileges))
      println("Property privileges:", utils.JSONString(resp[0].PropertyPrivileges))
      

      Username: Tester
      Created at: 1970-01-01 08:00:00
      Graph privileges: {"Ad_Click":["FIND_EDGE","FIND_NODE"],"DFS_EG":["UPDATE","INSERT"]}
      System privileges: ["MOUNT_GRAPH"]
      Property privileges: {"edge":{"deny":[],"read":[],"write":[]},"node":{"deny":[],"read":[],"write":[["miniCircle","account","name"]]}}
      

      Stats

      Stats对象包含以下字段:

      字段
      类型
      描述
      CPUUsage string CPU使用百分比
      MemUsage string 内存使用量(兆字节)
      ExpiredDate string 许可证过期日期
      CPUCores string CPU核数
      Company string 公司名称
      ServerType string 服务器类型
      Version string 服务器版本

      myQuery, _ := conn.Uql("stats()", requestConfig)
      resp, _ := myQuery.Alias("_statistic").AsStats()
      
      println("CPU usage::", resp.CPUUsage, "%")
      println("Memory usage:", resp.MemUsage, "%")
      

      CPU usage: 16.926739 %
      Memory usage: 11558.082031 %
      

      Process

      Process对象包含以下字段:

      字段
      类型
      描述
      ProcessId string 进程ID
      Status string 进程状态
      ProcessUql string 与进程一起运行的UQL
      Duration string 任务已运行时长,单位为秒

      myQuery, _ := conn.Uql("top()", requestConfig)
      resp, _ := myQuery.Alias("_top").AsTops()
      
      println(resp[0].ProcessId)
      

      a_5_15518_2
      

      Task

      Task对象包含以下字段:

      字段
      类型
      描述
      Param object 算法参数和对应值
      TaskInfo TaskInfo 任务信息包括TaskIDAlgoNameStartTimeTaskStatus
      ErrorMsg string 任务的错误信息
      Result object 算法结果、统计数据及其对应值

      myQuery, _ := conn.Uql("show().task()", requestConfig)
      resp, _ := myQuery.Alias("_task").AsTasks()
      
      println("Algo name:", resp[0].TaskInfo.AlgoName)
      println("Parameters:", utils.JSONString(resp[0].Param))
      println("Result:", utils.JSONString(resp[0].Result))
      

      Algo name: louvain
      Parameters: {"min_modularity_increase":"0.001","phase1_loop_num":"20"}
      Result: {"community_count":"1228589","modularity":"0.635263","result_files":"communityID"}
      

      Table

      Table对象包含以下字段:

      字段
      类型
      描述
      Name string 表格名称
      Headers []Property 表头
      Rows []Row 表格行

      作用在Table对象上的方法:

      方法
      返回值
      描述
      ToKV() []Values 将表的所有行转换成键值列表

      myQuery, _ := conn.Uql("find().nodes() as n return table(n._id, n._uuid) as myTable limit 5", requestConfig)
      resp, _ := myQuery.Alias("myTable").AsTable()
      
      println("2nd row in table:", utils.JSONString(resp.ToKV()[1]))
      

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

      Attr

      Attr对象包含以下字段:

      字段
      类型
      描述
      Name string 别名
      PropertyType PropertyType Attr类型
      ResultType ResultType Attr类型描述
      Rows Row Attr行

      myQuery, _ := conn.Uql("find().nodes({@ad}) as n return n.brand limit 5", requestConfig)
      resp, _ := myQuery.Alias("n.brand").AsAttr()
      println(utils.JSONString(resp.Rows))
      

      [14655,14655,14655,14655,434760]
      
      请完成以下信息后可下载此书
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写
      *
      你的电话必须填写