修改密码

请输入密码
请输入密码 请输入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

搜索
    中文

      连接与各类配置

      UltipaConfig

      UltipaConfig 用于配置连接 Ultipa 数据库时所需的 server 信息。

      配置项 类型 默认值 说明
      Hosts []string Ultipa 数据库集群地址列表
      Username string 用户名
      Password string 密码
      DefaultGraph string 连接时使用的图集名
      Crt []byte crt证书路径
      MaxRecvSIze int 10MB 接收数据的最大字节数
      Consistency bool false 是否使用 leader 保证读一致性
      CurrentGraph string default 当前使用的图集名
      CurrentClusterId string name server 的集群 ID
      Timeout uint32 1000 发送请求时的超时时间(秒)
      Debug bool false 是否使用 debug 模式
      HeartBeat int 0 所有实例的心跳时间(秒),0 则为关闭心跳时间

      示例:创建一个 Ultipa 连接,使用代码进行配置

      func TestMisc(t *testing.T) {
      	config := configuration.NewUltipaConfig(&configuration.UltipaConfig{
      		Hosts:    []string{"192.168.1.85:60061", "192.168.1.86:60061", "192.168.1.87:60061"},
      		Username: "***",
      		Password: "***",
      	})
      
      	conn, _ := sdk.NewUltipa(config)
      
      	testResult, _ := conn.Test()
      	println(testResult)
      }
      

      yaml 配置文件

      yaml 配置文件用于存放连接 Ultipa 数据库时所需的 server 信息。yaml 文件中的变量名与 UltipaConfig 的配置项略有不同:

      yaml 变量名 对应的配置项
      hosts Hosts
      username Username
      password Password
      default_graph DefaultGraph
      crt Crt
      max_recv_size MaxRecvSIze
      consistency Consistency
      current_graph CurrentGraph
      current_cluster_id CurrentClusterId
      timeout Timeout
      debug Debug
      heart_beat HeartBeat

      示例:创建一个 Ultipa 连接,使用 yaml 文件进行配置,将配置文件 'testConfig.yml' 放置于当前 go 文件的目录下

      hosts: 
        - "192.168.1.85:60061"
        - "192.168.1.86:60061"
        - "192.168.1.87:60061"
      username: ***
      password: ***
      default_graph: amz
      timeout:: 300
      

      func TestMisc(t *testing.T) {
      	config, _ := configuration.LoadConfigFromYAML("./testConfig.yml")
      
      	conn, _ := sdk.NewUltipa(config)
      	testResult, _ := conn.Test()
      	println(testResult)
      }
      

      RequestConfig

      RequestConfig 用于向 Ultipa 数据库发送非插入类请求时进行相关的配置。

      配置项 类型 默认值 说明
      GraphName string 当前请求使用的图集名,不设置则使用连接配置时的 DefaultGraph
      Timeout uint32 0 发送请求时的超时时间(秒)
      ClusterId string name server 的集群 ID
      Host string 使用指定的主机进行请求,不设置则随机选择一台主机
      UseMaster bool false 是否使用 leader 进行请求来保证读一致性
      UseControl bool false 是否使用 control 节点进行请求
      RequestType RequestType 或 int32 0 根据请求类型选择请求发送方式:
      RequestType_Write 或 1 时,将增、删、改请求发送至 leader
      RequestType_Task 或 2 时,将任务类 UQL 语句发送至 algo(算法节点)
      RequestType_Normal 或 3 时,随机选择一台主机进行发送
      Uql string 内部程序使用的 UQL 语句

      示例:创建连接时使用 default 图集,执行 UQL 时使用 amz 图集,发送至算法节点并执行算法回写

      func TestMisc(t *testing.T) {
      	config := configuration.NewUltipaConfig(&configuration.UltipaConfig{
      		Hosts:    []string{"192.168.1.85:60061", "192.168.1.86:60061", "192.168.1.87:60061"},
      		Username: "***",
      		Password: "***",
      	})
      
      	conn, _ := sdk.NewUltipa(config)
      
      	requestConfig := &configuration.RequestConfig{
      		GraphName:   "amz",
      		RequestType: configuration.RequestType_Task,
          }
      	conn.UQL("algo(degree).params().write({db:{property: \"degree\"}})", requestConfig)
      }
      

      InsertRequestConfig

      InsertRequestConfig 用于向 Ultipa 数据库发送插入类请求时进行相关的配置。

      配置项 类型 默认值 说明
      GraphName string 当前请求使用的图集名,不设置则使用连接配置时的 DefaultGraph
      Timeout uint32 0 发送请求时的超时时间(秒)
      ClusterId string name server 的集群 ID
      Host string 使用指定的主机进行请求,不设置则随机选择一台主机
      UseMaster bool false 是否使用 leader 进行请求来保证读一致性
      UseControl bool false 是否使用 control 节点进行请求
      RequestType RequestType 或 int32 0 根据请求类型选择请求发送方式:
      RequestType_Write 或 1 时,将增、删、改请求发送至 leader
      RequestType_Task 或 2 时,将任务类 UQL 语句发送至 algo(算法节点)
      RequestType_Normal 或 3 时,随机选择一台主机进行发送
      Uql string 内部程序使用的 UQL 语句
      InsertType ultipa.InsertType 或 int32 0 插入操作的类型:
      InsertType_NORMAL 或 0 时,为普通插入操作
      InsertType_OVERWRITE 或 1 时,为插入覆盖操作
      InsertType_UPSERT 或 2 时,为插入更新操作
      CreateNodeIfNotExist bool false 插入边时如果起点或终点不存在,是否自动插入起点或终点

      示例:创建连接时使用 default 图集,执行插入点时使用 test 图集并进行插入覆盖操作

      func TestMisc(t *testing.T) {
      	config := configuration.NewUltipaConfig(&configuration.UltipaConfig{
      		Hosts:    []string{"192.168.1.85:60061", "192.168.1.86:60061", "192.168.1.87:60061"},
      		Username: "***",
      		Password: "***",
      	})
      
      	conn, _ := sdk.NewUltipa(config)
      
      	requestConfig := &configuration.RequestConfig{
      		GraphName:   "test",
          }
      	insertRequestConfig := &configuration.InsertRequestConfig{
      		RequestConfig: requestConfig,
      		InsertType:    ultipa.InsertType_OVERWRITE,
      	}  
        
      	var nodes []*structs.Node
      
      	newNode1 := structs.NewNode()
      	newNode1.Schema = "card"
      	newNode1.ID = "ULTIPA8000000000000001"
      	newNode1.Set("amount", float32(3235.2))
      	nodes = append(nodes, newNode1)
      
      	newNode2 := structs.NewNode()
      	newNode2.Schema = "client"
      	newNode2.ID = "ULTIPA8000000000000007"
      	newNode2.Set("level", int32(77))
      	nodes = append(nodes, newNode2)
          
          conn.InsertNodesBatchAuto(nodes, insertRequestConfig)
      }
      
      请完成以下信息后可下载此书
      *
      公司名称不能为空
      *
      公司邮箱必须填写
      *
      你的名字必须填写
      *
      你的电话必须填写
      *
      你的电话必须填写